PHP错误Warning:mysql_query()解决方法

yipeiwu_com7年前Mysql基础

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+mysqli使用面向对象方式更新数据库实例

本文实例讲述了php+mysqli使用面向对象方式更新数据库的方法,分享给大家供大家参考。具体实现方法如下: 复制代码 代码如下:<?php //第一步:创建数据连接对象...

使用PHPMYADMIN操作mysql数据库添加新用户和数据库的方法

使用PHPMYADMIN操作mysql数据库添加新用户和数据库的方法

1、新建数据库:  进入phpmyadmin管理界面以后,找到如下文字“创建一个新的数据库”,然后在下面填上要新建的数据库的名称,在后面的下拉列表中选择数据库的编码,如“utf8_gen...

图解MYSQL的安装和数据升级第1/2页

图解MYSQL的安装和数据升级第1/2页

如果你是全新安装,就可以跳过这一步啦 找到你的Mysql的数据库目录下的 ragnarok 数据库目录,例如我的Mysql安装在D:\mysql 这个目录下,就到 D:\mysql\da...

PHP实现清除MySQL死连接的方法

本文实例讲述了PHP实现清除MySQL死连接的方法。分享给大家供大家参考,具体如下: 连接的情况,主要表现为有过多的Sleep连接,并且Time时间很长,占满了所有的可用连接数,以至于其...

PHP+mysql实现的三级联动菜单功能示例

本文实例讲述了PHP+mysql实现的三级联动菜单功能。分享给大家供大家参考,具体如下: 数据库mysql -- 数据库: `student` -- -- -------------...