我将 mysql_* 转换为 mysqli,但遇到以下问题。
php 类(Functions.php):
class Functions{
public static function filter($data){
$data = trim(htmlentities(strip_tags($data)));
if(get_magic_quotes_gpc())
$data = stripslashes($data);
$data = $mysqli->real_escape_string($data);
return $data;
}
}
数据库连接(dbconnect.php):
$dbhost = 'localhost';
$dbuser = 'xxxxxx';
$dbpass = 'xxxxxx';
$dbname = 'xxxxxx';
$mysqli = new mysqli($dbhost, $dbuser, $dbpass, $dbname);
if(mysqli_connect_errno()){
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
我在 header.php 中包含上述文件,例如
include('inc/dbconnect.php');
include('inc/Functions.php');
我让我的页面调用类函数,例如:
$params = Functions::filter($_GET['param']);
加载页面时出现此错误:
致命错误:在第 XX 行的 C:\xampp\htdocs\site\inc\functions.php 中的非对象上调用成员函数 real_escape_string()
我不是已经在 dbconnect.php 中为 mysqli 创建了一个对象吗?为什么它显示这个错误?它发生在 Functions.php 中所有相关的 mysqli 上。
请指教,非常感谢。