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");
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=$db?$db:new MysqLClass();
或者
$this->link=MysqL_connect($host,$pw,true);