php提示错误:Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO)
代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
<?php class mysqlClass { function mysqlClass( $host = 'localhost' , $user = 'root' , $pw = '' , $db = 'mysql' ) { $this ->link=mysql_connect( $host , $user , $pw ); mysql_select_db( $db ); } function query( $sql ){ mysql_query( $sql ); } function __destruct(){ mysql_close( $this ->link); //multi construct will cause error } // liehuo,net } $db = new mysqlClass(); $db = new mysqlClass(); $db ->query( "select * from user" ); |
原因:
mysqlClass第二次初使化时,先初使化mysqlClass,得到跟第一个$db相同的$this->link,然后调用__construct函数会把this->link关闭。
最后导致$db中mysql资源为空,弹出错误。
解决办法:
$db=$db?$db:new mysqlClass();
或者
$this->link=mysql_connect($host,$user,$pw,true);
希望提供的解决方法可以真正的帮助到大家。