We help IT Professionals succeed at work.

query returns no results

Karl01
Karl01 asked
on
Medium Priority
291 Views
Last Modified: 2013-12-12
Hi i and trying to create an update function for my web site i have two scripts one to take the users input and a second to search for the valu and output the record in a text field for editing before a third script is used to updte the data, i am having trouble with the first 2 as the scripts run but there is nothing outputted in the textarea i have listed the code below, can anyone help?

<html>
<head><title>update</title></head>
<body>
<?php

 $searchterm = strip_tags(trim($_POST['searchterm']));

 $label_array = array (
                   "searchterm" => "Please enter your search term");

foreach ($_POST as $field => $value);

{

   echo "<p><hr>
      <form action='staff_update_results.php' method='POST'>
      <center>
      <table width='95%' border='0' cellspacing='0' cellpadding='2'>
      </tr>

      <tr><td align='right'><B>{$label_array['searchterm']}:</br></td>
        <td><input type='text' name='results' size='65' maxlength='65'> </td>
      </tr>
</table>
      <p><input type='submit' value='Run search'>
      </form>
      </center>";
}

   
?>
</body></html>

<?php

  include("connect.inc");
    $connection = mysql_connect($host,$user,$password)
       or die ("couldn't connect to server");
    $db = mysql_select_db($database,$connection)
       or die ("Couldn't select database");

$query = "SELECT * FROM staff WHERE lastname = '$_POST[searchterm]'";
$result = mysql_query($query)  or die(mysql_error());

$row = mysql_fetch_array($result,MYSQL_ASSOC);


$result = mysql_query($query) or die(mysql_error());

$row = mysql_fetch_array($result,MYSQL_ASSOC);

$label_array = array (
                  "searchresults" => "The search retured the results");

foreach ($_POST as $field => $value);
 

echo "<p><hr>
      <form action='staff_update.php' method='POST'>
      <center>
      <table width='80%' border='0' cellspacing='0' cellpadding='2'>
      </tr>

      <tr><td align='right'><B>{$label_array['searchresult']}:</br></td>
        <td><textarea name='searchresults' cols='40' rows='6'>

 </textarea> </td>
      </tr>

      <p><input type='submit' value='Go Back'>";




?>
Comment
Watch Question

Top Expert 2005
Commented:
foreach ($_POST as $field => $value); <-- there's a semicolon that shouldn't be.

There's also nothing within the textarea tags.  You'll need to put something to do with $row in there.

echo "...<textarea>";
print_r($row);
echo "</textarea>...";

Not the solution you were looking for? Getting a personalized solution is easy.

Ask the Experts

Author

Commented:
Thanks for the reply but tried that and messed about with a few thing still giving me a blank textarea! any other ideas?

cheers!
Top Expert 2005

Commented:
checked to make sure there are results returned?

Author

Commented:
how do u mean? I have checked the query in the mysql prompt and the value I entered is in the table and does return a result!

Commented:
Are you wanting to simply check whether any results have been returned, or are you trying to actually print the results?
Top Expert 2006

Commented:
Well,the problem is with the text area itself
u have put nothing between the opening and closing tags for Txt Area
<text area><?Put some value over here(output of the query?></Text Area>
Access more of Experts Exchange with a free account
Thanks for using Experts Exchange.

Create a free account to continue.

Limited access with a free account allows you to:

  • View three pieces of content (articles, solutions, posts, and videos)
  • Ask the experts questions (counted toward content limit)
  • Customize your dashboard and profile

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.