簡體   English   中英

php mysqli fetch_row只返回列名

[英]php mysqli fetch_row only returns column name

我有一個帶有列(user_id,user_name,user_email,user_pw)和2行的表

1位管理員admin@admin.com管理員

2個user_1 user_1@user.com user_1

我試圖按照以下示例從PHP查詢數據庫http://php.net/manual/en/mysqli-result.fetch-row.php

但是當我打印輸出時,我只會得到列名而不是值(而且不幸的是,換行符也被忽略了)

連接成功選擇返回2行。用戶ID,用戶名,用戶電子郵件用戶名,用戶名,用戶電子郵件

我基本上在鏈接中復制了示例。 我在這里做錯了什么?

<?php

$conn_error = "Could not connect to db";

$mysql_host = 'localhost';
$mysql_user = 'root';
$mysql_password = '';
$mysql_db = 'test';

$mysqli = new mysqli($mysql_host, $mysql_user, $mysql_password, $mysql_db);

if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  } else {
  echo "Connection successful";
  }

$query = "SELECT 'user_id', 'user_name', 'user_email' FROM users";

if ($result = $mysqli->query($query)) {

    printf("Select returned %d rows.", mysqli_num_rows($result));

    /* fetch object array */
    while ($row = $result->fetch_row()) {
        printf ("%s, %s, %s\n", $row[0], $row[1], $row[2]);
    }

    $result->close();

} else {

    echo "Nothing returned on query " .$query;

}
$mysqli->close();

?>

刪除字段名稱周圍的引號。 更改:

SELECT 'user_id', 'user_name', 'user_email' FROM users

至:

SELECT user_id, user_name, user_email FROM users

您可能打算使用反向刻度,如下所示:

SELECT `user_id`, `user_name`, `user_email` FROM users

那也可以,但是僅當您在字段名稱中使用保留字或特殊字符(例如空格)時才需要它們。

暫無
暫無

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

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