我正在编写用于通过用户传递的查询实时搜索记录的代码。以下是编写的代码:
if(isset($_REQUEST["term"])){
$sql = "SELECT * FROM students WHERE rollno LIKE ?";
if($stmt = $conn->prepare($sql)){
$stmt->bind_param("s", $param_term);
$param_term = $_REQUEST["term"] . '%';
if($stmt->execute()){
$result = $stmt->get_result(); // error on this line
if($result->num_rows > 0){
// Fetch result rows as an associative array
while($row = $result->fetch_array(MYSQLI_ASSOC)){
$rollno = $row['rollno'];
$name = $row['name'];
$image = $row['image'];
echo $rollno." ".$name." ".$image;
}
}
}
}
}
该代码在本地服务器上正常工作。但是,相同的代码在具有相同数据库的实时服务器上不起作用。输入查询后,我立即收到错误Fatal error: Call to undefined method mysqli_stmt::get_result() in /home/u687417727/public_html/digiclass/panel/backend-search.php on line 25
。我已经在代码中用注释显示了错误。可能是什么问题呢?请帮助。试图长时间评估它。
答案 0 :(得分:1)
您有两种选择,或者是在 php_info 的服务器上安装 mysqlnd How to enable mysqlnd for php?
或为此编写自己的函数
var psi = new ProcessStartInfo
{
FileName = @"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe",
Arguments = "http://www.msn.com",
CreateNoWindow = false,
UseShellExecute = true
UserName = "username",
Password = "secure password",
Domain = "domain"
};
var process = new Process
{
StartInfo = psi
};
var result = process.Start(); // result is true
int processId = process.Id; // processId is valid
答案 1 :(得分:0)
我已解决这个问题。
我也对这个问题感到沮丧,但经过巨大的挣扎和冲浪后,我找到了这个问题的解决方案。如果 get_result() 不能在你的 cpnael 中使用“mysqli”扩展,那么请按照以下步骤操作:
我只是通过在我的 Cpanel 中 DISABLED "mysqli" 和 ENABLED "nd_mysqli" 扩展解决了这个问题。现在 get_result() 语句起作用并解决了这个令人头疼的问题。