#13368 [Com]: 2nd call to @mssql_query does not fill $php_errormsg s'd be'permission denied'

From: Date: Mon, 30 May 2005 08:38:32 +0000
Subject: #13368 [Com]: 2nd call to @mssql_query does not fill $php_errormsg s'd be'permission denied'
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-79691@lists.php.net to get a copy of this message
ID: 13368 Comment by: freddyz77 at tin dot it Reported By: hlousek at excon dot cz Status: No Feedback Bug Type: MSSQL related Operating System: SuSe Linux 7.1 PHP Version: 4.0.6 New Comment: FreeTDS 0.51 is very old, error handling has been entirely rewritten. You can close the bug report. freddy77 (FreeTDS developer) Previous Comments: ------------------------------------------------------------------------ [2002-01-25 11:48:14] sander@php.net No feedback. ------------------------------------------------------------------------ [2002-01-03 22:07:37] zak@php.net This may have just been corrected in the development version of PHP. Could you please download and build the php4-latest snapshot from http://snaps.php.net? Alternately, the change should be in the next release of PHP. ------------------------------------------------------------------------ [2001-09-18 10:30:19] hlousek at excon dot cz I'm using MSSQL 7.0 on WinNT4.0, FreeTDS 0.51 with tdsver=4.2, client is SuSe Linux 7.1, Apache 1.3.19, PHP 4.0.6. I've run into troubles while checking SELECT permissions for several tables within a single db connection. In a typical case, I think, this should work fine: ################################################## $php_errormsg = ''; @mssql_query("SELECT * FROM $table"); if (!empty($php_errormsg)) { echo "It seems you cannot access table $table"; } ################################################## But this code works only the first time within a single connection to MSSQL server. The 2nd call to such a code does nothing with the contents of $php_errormsg, even when there should be message 'Permission denied'. (Sometimes the next call to mssql_query without '@' fires the exception.) I've also tried a piece of code like this, but the result was the same: ################################################## $php_errormsg = ''; $result = mssql_query("SELECT * FROM $table"); if (! $result) { echo "It seems you cannot access table $table"; } ################################################## It seems to me, that there is a bug somewhere. The only way to handle this situation seems to be reconnecting to the MSSQL server. Any help? ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=13368&edit=1

« previous php.bugs (#79691) next »