RE: [PHP-DB] mssql_query returns a boolean false instead an empty recordset whenthe query doesn't match any record

2005-11-09 Thread Bastien Koert
According to the php docs, the mssql call should return 'TRUE' on empty 
recordset. Are you sure there is no problem with the query?


Bastien



From: "Pablo F. Díaz Anzalone"<[EMAIL PROTECTED]>
To: php-db@lists.php.net
Subject: [PHP-DB] mssql_query returns a boolean false instead an empty 
recordset whenthe query doesn't match any record

Date: Wed, 09 Nov 2005 18:54:51 +0100

Hi all,

 Maybe I didn't explain myself quite wel, so I wil repeat the 
queestion in other words.


I would like to know which is the correct answer I should obtain from 
mssql_query. I have a server in which mssql_query is returning a false 
boolean when it should return an empty recordset (as is doing in the other 
server).


In other words, the question is why I have a server in which mssql_query 
returns empty recordsets when the query doesn't match any record and I have 
installed a new one in which instead of an empty recordset I get a boolean 
valued to false.


Which one is ok and what can be the problem with the other.

I know I can test in each query if result is false or a resource but I have 
more than a hundred queries and I would like to have the knew server with 
the same behavour as the previous one, which it is also how I think that it 
should work.


I'm sorry for the repetition of the topic, but I'm very interested in 
having a better solution than putting if's in each query.


Thank you.

Pablo





<< smime.p7s >>


--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP-DB] mssql_query returns a boolean false instead an empty recordset whenthe query doesn't match any record

2005-11-07 Thread Bastien Koert
He needs to check whether the query worked before he attempts to access the 
data


$result = mssql_query($query);
if (mssql_errno)  != 0)
{
 echo "error in query :". mssql_error();
 die();
}


Bastien


From: "Ziv Gabel" <[EMAIL PROTECTED]>
To: "Pablo F. Díaz Anzalone" 
<[EMAIL PROTECTED]>,
Subject: Re: [PHP-DB] mssql_query returns a boolean false instead an empty 
recordset whenthe query doesn't match any record

Date: Mon, 7 Nov 2005 13:07:09 +0200

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"" 
<[EMAIL PROTECTED]>

To: 
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,

I'm moving my intranet pages from one server to a new one. In the
first 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 resource

The code we are using is something like this:

$db = @mssql_connect("SERVER","USER","PASS") or die("I can't connect
to 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








This footnote confirms that this email message has been scanned by
PineApp Mail-SeCure for the presence of malicious code, vandals & computer 
viruses.




--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP-DB] mssql_query returns a boolean false instead an empty recordset whenthe query doesn't match any record

2005-11-07 Thread Ziv Gabel

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"" <[EMAIL PROTECTED]>

To: 
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,

I'm moving my intranet pages from one server to a new one. In the
first 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 resource

The code we are using is something like this:

$db = @mssql_connect("SERVER","USER","PASS") or die("I can't connect
to 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








This footnote confirms that this email message has been scanned by
PineApp Mail-SeCure for the presence of malicious code, vandals & computer 
viruses.



--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php