如何解决php mysql_query 报错问题
php mysql_query报错的解决办法:1、使用代码“$db=$db?$db:new mysqlClass();”;2、使用代码“$this->link=mysql_connect($host,$user,$pw,true);”。
本文操作环境:windows7系统、PHP7.1版,DELL G3电脑
PHP错误Warning:mysql_query()解决方法
php提示错误:Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO)
代码:
<?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);
【推荐学习:PHP视频教程】