簡體   English   中英

如何在mysqli中獲取結果/行

[英]How to fetch the result/row in mysqli

我正在學習mysql,但不確定在此代碼中接下來要獲取匹配行的結果,我該如何獲取?

$stmt= $db->prepare("SELECT * FROM users WHERE email=? and password = ?");
$stmt->bind_param("ss", $_POST['user_name'],md5($_POST['user_pass']));
$stmt->execute();

我相信這對您來說很簡單,請幫助我學習。

看一下此頁面上的示例#6

這是緊接着bind_param()和execute()之后的相關位:

$out_id    = NULL;
$out_label = NULL;
if (!$stmt->bind_result($out_id, $out_label)) {
    echo "Binding output parameters failed: (" . $stmt->errno . ") " . $stmt->error;
}

while ($stmt->fetch()) {
    printf("id = %s (%s), label = %s (%s)\n", $out_id, gettype($out_id), $out_label, gettype($out_label));
}

由於我不知道要使用SELECT *插入哪些列,所以我將僅保留該示例。

您還可以使用fetch_assoc() ,它可能更容易使用,並且最終被更普遍地使用。 從php.net的同一頁面上挖掘,我們從示例#8中獲得了相關部分(實際上,我不得不對其進行一些修改-示例#8在做一些帶有緩沖的時髦事情):

if (!($res = $stmt->get_result())) {
    echo "Getting result set failed: (" . $stmt->errno . ") " . $stmt->error;
}

while ($row = $res->fetch_assoc()) {
    var_dump($row);
}
$res->close();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM