Re: mssql_query returns a boolean false instead an empty recordset whenthe query doesn't match any record
| From: | Ziv Gabel | Date: | Mon, 07 Nov 2005 11:07:09 +0000 |
| Subject: | Re: mssql_query returns a boolean false instead an empty recordset whenthe query doesn't match any record | ||
| References: | 1 | Groups: | php.db |
| Request: | Send a blank email to php-db+get-40612@lists.php.net to get a copy of this message | ||
you can try this
while ($row = @mssql_fetch_array($result, MSSQL_ASSOC))
{
if(!$row) {
continue;
}
else {
//process each registry from the query
}
Best Regards Ziv Gabel Pineapp Support ----- Original Message ----- From: ""Pablo F. Díaz Anzalone"" <pablo.anzalone@iso.bbe.es> To: <php-db@lists.php.net> Sent: Monday, November 07, 2005 12:38 PM Subject: [PHP-DB] mssql_query returns a boolean false instead an empty recordset whenthe query doesn't match any record}
Hi all,************************************************************************************ This footnote confirms that this email message has been scanned by PineApp Mail-SeCure for the presence of malicious code, vandals & computer viruses. ************************************************************************************I'm moving my intranet pages from one server to a new one. In thefirst server everything works ok but in the new one we are having problems because every time that we are expecting a recordset and it should be empty because the query doesn't match any record it is return a boolean valued to false and we get this error when we call mssql_fetch_row: Warning: mssql_fetch_array(): supplied argument is not a valid MS SQL-result resourceThe code we are using is something like this:$db = @mssql_connect("SERVER","USER","PASS") or die("I can't connectto server");mssql_select_db("DATABASE"); $query = "SELECT * FROM table WHERE false"; $result = mssql_query($query); while ($row = mssql_fetch_array($result, MSSQL_ASSOC)) { //process each registry from the query }Everything works fine when the query match at least a record but mssql_query doesn't return a recordset when it should return an empty one. We have a debian stable installation with php version 4.3.10-16 and freetds-dev 0.63-2. To obtain freetds module we configured and compiled php with "../configure --with-mssql=shared" and "copied with cp modules/mssql.so /usr/lib/php4/20020429/". I know it could be a bit strange doing things in this way but it was the one I got to have a stable debian and apache and php and freetds installed with packages. I hope there is someone who could help me. Pablo