RE: [PHP] Passing by conditional IF statement...why?

From: Date: Tue, 23 Mar 2004 00:39:13 +0000
Subject: RE: [PHP] Passing by conditional IF statement...why?
Groups: php.general 
Request: Send a blank email to php-general+get-181204@lists.php.net to get a copy of this message
Ryan A wrote: > Hi, > I have this simple code in my php script: > > * * * * * > $res = mysql_query("SELECT product_id, now()-1 FROM ".$tc."_prods > where cno=$cno AND product_id='$product_id' LIMIT 1"); > > if($res) > { > $r = mysql_fetch_row($res); > $product_id2 = $r[0]; > $th_pres= $r[1]; > echo "debug echo"; > }else {echo "No results, sorry";} > * * * * * > > its working great when the data actually exists but when there are no > matches it still executes the "if($res)" part instead of displaying > "No results, sorry". Why is that? or am I using the syntax wrong? > > Thanks, > -Ryan You need to test the number of records being returned. By just using "if ($res)" you're simply ensuring that it is returning a valid resource. It is, but it's just that the resource has zero rows. Change the test such that it check the number of results to be >= 1 and it should work. Cheers, Pablo

« previous php.general (#181204) next »