致命错误:调用未定义的方法 mysqli_stmt::get_result()

Posted

技术标签:

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

我付钱给一个人让我在我的网站上搜索代码。因此,在使用 php 5.3 的本地主机上,所有正常的搜索都运行良好,一切都很好。但是当我将文件上传到我的网络主机时,search.php 给我一个错误“”我的 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();
?>

【问题讨论】:

Call to undefined method mysqli_stmt::get_result的可能重复 【参考方案1】:

mysqli::get_result() 中所述:

仅限 MySQL 原生驱动程序

仅适用于mysqlnd。

点击链接到introduction:

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

您还可以查看installation instructions。

【讨论】:

以上是关于致命错误:调用未定义的方法 mysqli_stmt::get_result()的主要内容,如果未能解决你的问题,请参考以下文章

致命错误:未捕获的错误:调用未定义的方法 stdClass::option();

使用 mysqli_stmt 时 PhP 可捕获的致命错误

致命错误:未捕获的错误:调用未定义的方法 Connection::prepare() [重复]

致命错误:调用未定义的方法 CookieComponent::del()

Woocommerce 出现致命错误:未捕获的错误:调用未定义的方法 WooCommerce::get_image_size()

Laravel 4:PHP 致命错误:调用未定义的方法 Blueprint::int()