ID: 9839
Updated by: cardinal
Reported By: [EMAIL PROTECTED]
Old-Status: Analyzed
Status: Closed
Bug Type: MySQL related
PHP Version: 4.0.4pl1
Assigned To:
Comments:
mysql_fetch_assoc (And _fetch_row) now only takes one parameter in CVS.
Previous Comments:
---------------------------------------------------------------------------
[2001-04-07 00:52:49] [EMAIL PROTECTED]
This is a bug in MySQL extension.
The mysql_fetch_assoc() function is supposed to take
only one argument. And you found this bug by passing
the $dblink variable which holds (after running opendir)
number 2 as value. The actual bug is in php_mysql_fetch_hash() function (in
php_mysql.c) as there
should be a check for the second possible argument, that it's one of MYSQL_ASSOC,
MYSQL_NUM or MYSQL_BOTH.
--Jani
---------------------------------------------------------------------------
[2001-03-19 11:16:29] [EMAIL PROTECTED]
<?php
// If the opendir call is before the connect, an associative array
// is NOT returned from mysql_fetch_assoc() - the closedir does not
// seem to have any effect on this phenomena.
//
// It does NOT matter if the code is contained within the if() or
// not. If the opendir() call occurs before the mysql_connect()
// call, I get a farkled array from mysql_fetch_assoc().
//
// Changing the database and/or tables queried does not seem to
// make a difference to the bug.
// Change the 0 to 1 below to see this bug
if (1) {
$bizarrevar = opendir("/etc/");
closedir($bizarrevar);
unset($bizarrevar);
}
$dblink = mysql_connect("localhost","user","password");
mysql_select_db("dbname", $dblink);
$qresult = mysql_query("SELECT * FROM comment", $dblink);
while ($rx = mysql_fetch_assoc($qresult, $dblink)) {
while (list($k,$v) = each($rx)) {
print(" $k = $v<BR>n");
}
}
?>
------------- End Script ------------
Data from phpinfo():
PHP was copmpiled with './configure' '--with-mysql' '--with-apache=../apache'
'--enable-track-vars'
Virtual dir support is disabled
Apache Info:
Apache Version Apache/1.3.19
Apache Release 10319100
Apache API Version 19990320
Loaded Modules mod_php4, mod_setenvif, mod_auth, mod_access, mod_alias, mod_userdir,
mod_actions, mod_imap, mod_asis, mod_cgi, mod_dir, mod_autoindex, mod_include,
mod_status, mod_negotiation, mod_mime, mod_log_config, mod_env, http_core
MySQL Info:
Active Persistent Links 0
Active Links 0
Client API version 3.23.22-beta
MYSQL_INCLUDE
MYSQL_LFLAGS
MYSQL_LIBS
mysql.allow_persistent On On
mysql.default_host no value no value
mysql.default_password no value no value
mysql.default_port no value no value
mysql.default_socket no value no value
mysql.default_user no value no value
mysql.max_links Unlimited Unlimited
mysql.max_persistent Unlimited Unlimited
If you need additional information, please feel free to contact me via email at
[EMAIL PROTECTED] :)
Thanks
---------------------------------------------------------------------------
ATTENTION! Do NOT reply to this email!
To reply, use the web interface found at http://bugs.php.net/?id=9839&edit=2
--
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]