【问题标题】:Fatal error: Call to undefined method mysqli_stmt::get_result()致命错误:调用未定义的方法 mysqli_stmt::get_result()
【发布时间】:2014-01-09 06:47:40
【问题描述】:

我付钱给一个人让我在我的网站上搜索代码。因此,在使用 php 5.3 的本地主机上,所有正常的搜索都运行良好,一切都很好。但是当我将文件上传到我的网络主机时,search.php 给我一个错误“致命错误:调用未定义的方法 mysqli_stmt::get_result()”我的 Search.php 代码是:

<?php
$stype = 0;
if (isset($_GET['s']) && $_GET['s']){
    $search=$_GET['s'];
    $stype += 1;
}
if (isset($_GET['min']) && $_GET['min'] && 
    isset($_GET['max']) && $_GET['max']){
    $pricemin=$_GET['min'];
    $pricemax=$_GET['max'];
    $stype +=2;
}

if (!$stype) {
    echo "Required parameter(s) missing. Please be sure to fill desired field(s). 

    <a href=\"#\" onclick=\"history.go(-1)\">Go Back</a>"

    ;
    exit;
}
/* connect to the database*/
$db = new mysqli("localhost", "XXX", "XXX", "XXX");
/* check connection */
if ($db->connect_errno) {
    echo "Connection failed: " . $db->connect_error;
    exit();
}


$query="SELECT * FROM `filmi` WHERE ";
if ($stype == 1) {
    $query .= " (`nomer` rlike ? OR `title` rlike ? OR `kategoriq` rlike ?) ";
} elseif ($stype == 2) {
    $query .= " `seriq` BETWEEN ? AND ? ";
} elseif ($stype == 3) {
    $query .= " (`nomer` rlike ? OR `title` rlike ? OR `kategoriq` rlike ?) AND `seriq` BETWEEN ? AND ?";
}
$query .= " ORDER BY seriq asc";
/* create a prepared statement */
$stmt = mysqli_stmt_init($db);
if (!$stmt = $db->prepare($query)) {
    //handle error here;
    echo "Error preparing statement.";
    exit;
}
/* bind parameters for markers */
if ($stype == 1) {
    $stmt->bind_param("sss", $search, $search, $search);
} elseif ($stype == 2) {
    $stmt->bind_param("dd", $pricemin, $pricemax);
} elseif ($stype == 3) {
    $stmt->bind_param("sssdd", $search, $search, $search, $pricemin, $pricemax);
}
/* execute query */
$stmt->execute();
/* get result */
 $result = $stmt->get_result();

if ($result) {
/* now you can fetch the results into an assoc array */
    while ($row = $result->fetch_assoc()) {
        echo " contenct " ;}
}
/* close statement */
$stmt->close();
/* close db connection */
$db->close();
?>

【问题讨论】:

标签: php mysqli


【解决方案1】:

mysqli::get_result() 中所述:

仅限 MySQL 原生驱动程序

仅适用于mysqlnd

点击链接到introduction

MySQL Native Driver 是 MySQL 客户端库 (libmysqlclient) 的替代品。 MySQL Native Driver 是 PHP 5.3.0 的官方 PHP 源代码的一部分。

您还可以查看installation instructions

【讨论】:

    猜你喜欢
    • 2013-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-11
    相关资源
    最近更新 更多