Home >Backend Development >PHP Tutorial > mysqli 出了点有关问题,大家来看看
mysqli 出了点问题,大家来看看
我写了一个sqlhelper.class.php 工具类,他主要是实例化后能直接查询数据库。然后我使用的是mysqli写的,出了错误,不知道怎么解决,请看代码:
<?php<br /> <br /> //这是一个工具类,他主要是完成对mysql的直接操作<br /> <br /> class SQLHelper{<br /> <br /> <br /> public $hosts;<br /> public $username;<br /> public $password;<br /> public $database;<br /> <br /> <br /> //构造函数主要是完成mysqli的对象的初始化<br /> public function __construc($a,$b,$c,$d){<br /> <br /> $mysqli=new MySQLi($a,$b,$c,$d);<br /> if($mysqli->connect_error){<br /> die("数据库连接出错!".$mysqli->connect_error);<br /> }<br /> <br /> $mysqli->query("set names utf8") or die("数据库设置字符集出错!");<br /> <br /> }<br /> <br /> <br /> //下面是一个查询方法,你给我传一个sql语句,我给你返回一个二维数组<br /> public function dql($mysql){<br /> <br /> $res=$mysqli->query($mysql) or die("数据库查询出错!");//dql查询语句这里返回一个结果集,我们将结果集处理为二维数组,同时释放结果集内存<br /> $resarr=array();<br /> <br /> while($row=$res->fetch_row()){ //这里是结果集自拆,同时每拆一次产生一行数组式的数组,我们将其放在一个二维数组里面<br /> <br /> $resarr[]=$row;<br /> <br /> }<br /> <br /> //如果代码走到这里,表明二维数组已经取完,我们立即释放结果集内存,同时返回二维数组<br /> $res->free();<br /> return $resarr;<br /> <br /> }<br /> <br /> <br /> //关闭资源<br /> public function closeresource(){<br /> <br /> $mysqli->close();<br /> <br /> }<br /> <br /> <br /> <br /> }<br /> <br /> ?>
Notice: Undefined variable: mysqli in D:\web\notebook\model\sql.php on line 30<br /> <br /> Fatal error: Call to a member function query() on a non-object in D:\web\notebook\model\sql.php on line 30