如果我不想使用bind_result和fetch,则替代mysqli get_restult

时间:2014-03-29 19:15:07

标签: php mysqli prepared-statement

当我使用这样的东西时:

$stmt = $dbConnection->prepare('SELECT * FROM employees WHERE name = ?');
$stmt->bind_param('s', $name);

$stmt->execute();

$result = $stmt->get_result();
while ($row = $result->fetch_assoc()) {
    // do something with $row
}

根据这个答案:

How can I prevent SQL injection in PHP?
我收到这个错误:

调用未定义的方法mysqli_stmt :: get_result()

因为get_result仅适用于mysqlnd(get_result php reference)。
那么有没有替代方法如何获得所有列?如果我不想绑定所有列(使用bind_result()),因为在我的情况下我会查询3个表,我只是不想绑定所有列,因为它是一个疯狂的工作。
所以我不想使用bind_result(),get_resuslt没有任何替代工作或者它意味着我不能使用准备好的语句,只有机会回到这个:

sql = "SELECT * FROM ...." //just some query
$query = mysqli_query($db_donnection, $sql);


while ($row = mysqli_fetch_array($query, MYSQLI_ASSOC)) {
    $id = $row["id"];
    $e = $row["email"];
    //....
}

0 个答案:

没有答案