- Code: Select all
<?php
// standard html web header
require 'header.html';
// html user data input form
require 'dbpump.php';
?>
<font size="14"><b>PumP search</b></font>
<br />
<br />
<?php
$query = "SELECT DISTINCT home_office FROM data ORDER BY home_office ASC";
if(!($connection = @ mysql_connect($hostName,$username,$password)))
die("Could not connect");
//select database to edit
if(!(@ mysql_select_db($databaseName, $connection)))
showerror();
if(!($result = @ mysql_query($query)))
showerror();
if(isset($_get['headoffice']))
{
//required to recover from server the previous selection
$headoffice = $_get['headoffice'];
}
?>
<form method="get" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<b>Home office country:</b>
<select name="headoffice">
<option value="All">All</option>
<?php
//cycles through all the home office countries in db and lists them in the html select
while($row = mysql_fetch_array($result))
{
if ($headoffice == $row['home_office'])
echo "<option SELECTED value=".$row['home_office'].">".$row['home_office']."</option>";
else
echo "<option value=".$row['home_office'].">".$row['home_office']."</option>";
} ///end while
mysql_free_result($result);
//this country added manually to see effect, works fine!
if ($headoffice == "New Jac territory") echo "<option SELECTED value=\"New Jac territory\">New Jac territory</option>";
else echo "<option value=\"New Jac territory\">New Jac territory</option>";
echo "</select>";?>
<input type="submit" value="SEARCH">
</form>
<br />
<?php //echo $headoffice;?>
<?php // standard html web page footer
require 'footer.html';?>
you run from this web site: http://www.pumpfundamentals.com/pumpdatabase2/test2.php
What happens is when you select South Africa and you click the Search button, the get function will only transmit the first part of the term or "South" so that you can't do a match to display further information.
I typed the country "New Jac territory" directly in the html as the last html select item to appear in the list; this has a couple of blanks and works fine. So it seems that html does not interpret correctly the value coming from the mysql db.
I hope I explained this properly.
Thanks,
Jacques


