我收到致命错误:第19行的/config/mySQL_class.php中找不到类'mysqli' 我测试了我的代码,但我似乎无法找到解决问题的方法,我只是一个初学程序员,昨天开始尝试OOP。有任何想法吗?
<?php
class Database
{
public $data;
public $mysqli;
public function __construct($host, $username, $password, $database){
$this->mysqli = new mysqli($host, $username, $password, $database);
if(mysqli_connect_errno()){
echo "Error: Could not connect to database.";
exit;
}
}
public function __destruct(){
$this->mysqli->close();
}
public function read(){
$sql = "SELECT * FROM `user` ";
$result = $this->mysqli->query($query);
$num_result = $result->num_rows;
if($num_result>0)
{
while($rows=$result->fetch_assoc()){
$this->data[]=$rows;
}
} else {
return $this->data;
}
}
}
?>
用法
include('config/mySQL_class.php');
$obj=new Crud("localhost","root","","crud");
$obj->read();
<table width="500" border="1" cellpadding="5">
<tr>
<th width="16" scope="row">id</th>
<td width="95">name</td>
<td width="140">email</td>
<td width="104">address</td>
<td width="71">Mobile</td>
<td>action</td>
</tr>
<?php
foreach($obj->data as $val){
extract($val);
?>
<tr>
<td scope="row"><?php echo $id; ?></td>
<td><?php echo $name; ?></td>
<td><?php echo $email; ?></td>
<td><?php echo $address; ?></td>
<td><?php echo $mob; ?></td>
<td><a href="edit.php?id=<?php echo $id; ?>">edit</a>|<a href="delete.php?id=<?php echo $id; ?>">Delete</a></td>
</tr>
<?php
}
?>
答案 0 :(得分:-1)
当您的服务器上未安装MySQLi扩展时,这是一个comon错误。
要检查MySQLi扩展是否可用,请尝试以下操作:
if (!function_exists('mysqli_init') && !extension_loaded('mysqli')) {
echo 'MySQLi extension is missing!';
} else {
echo 'MySQLi extension is installed!';
}
要安装MySQLi扩展程序,请按this instructions。
您也可能安装了MySQLi扩展,但在php.ini文件中进行了注释。打开php.ini并检查extension = php_mysqli.so是否未被注释。如果是这样,请取消注释并重新启动apache服务器。