If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

 
Go Back  dBforums > Data Access, Manipulation & Batch Languages > PHP > Warning: mysql_fetch_array():

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1 (permalink)  
Old 12-02-09, 01:26
sql2000 sql2000 is offline
Registered User
 
Join Date: Nov 2009
Posts: 6
Warning: mysql_fetch_array():

Hi Guys,

I have written a search page in php. When i run it it shows an error as

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\Program Files\Apache Group\Apache2\htdocs\Search_ex\sea.php on line 28

My script is

PHP Code:
<?
//This is only displayed if they have submitted the form
if ($searching =="yes")
{
echo 
"<h2>Results</h2><p>";

//If they did not enter a search term we give them an error
if ($find == "")
{
echo 
"<p>You forgot to enter a search term";
exit;
}

// Otherwise we connect to our Database
$con=mysql_connect("localhost""root""abc456") or die(mysql_error());
mysql_select_db("project",$con) or die(mysql_error());

// We preform a bit of filtering
$find strtoupper($find);
$find strip_tags($find);
$find trim ($find);

//Now we search for our search term, in the field the user specified
  
$data="SELECT FirstName, LastName, Email FROM Contacts WHERE  FirstName LIKE '%" $field "%' OR LastName LIKE '%" $field  ."%'";
//$data = mysql_query("SELECT * FROM users WHERE upper($field) LIKE'%$find%'");

//And we display the results
while($result=mysql_fetch_array($data))


echo 
$result['FirstName'];
echo 
" ";
echo 
$result['LastName'];
echo 
"<br>";
echo 
$result['Email'];
echo 
"<br>";
echo 
"<br>";



//This counts the number or results - and if there wasn't any it gives them a little message explaining that
$anymatches=mysql_num_rows($data);
if (
$anymatches == 0)
{
echo 
"Sorry, but we can not find an entry to match your query<br><br>";
}

//And we remind them what they searched for
echo "<b>Searched For:</b> " .$find;
}
?>
Can anyone help me on this.
edit by loquin: added [code] [/code] tags for readability... Try it - you'll like it.
edit by healdem: replaced [code] [/code] with [php] [/php] tags for even better readability when pasting php code... Try it - you'll like it.

Last edited by healdem; 12-03-09 at 03:29. Reason: add [code] [/code] tags for readability... Try it - you'll like it.
Reply With Quote
  #2 (permalink)  
Old 12-02-09, 02:07
healdem healdem is offline
Jaded Developer
 
Join Date: Nov 2004
Location: out on a limb
Posts: 9,262
sounds like theres no data returned from the sql
you should check the error code (mySQL_Error) and the number of rows returned before trying to use calues from the resultset

look at the mysql_num_rows function
PHP: mysql_num_rows - Manual
__________________
I'd rather be riding my Versys or my Tiger 800 let alone the Norton
Reply With Quote
  #3 (permalink)  
Old 12-03-09, 01:28
sql2000 sql2000 is offline
Registered User
 
Join Date: Nov 2009
Posts: 6
Hi Healde,

That works. Grate. Thanks 4 ur help.
Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On