2017-09-05 142 views
-2

我的代码如下。我无法从表格中获取数据。请帮助 database.php中php mysql:无法从数据库获取数据

$db = mysqli_connect('localhost','root','','filesproject') or die('Error  connecting to MySQL server.'); 

的index.php

<?php 
include('config/database.php'); 

//Step2 
$query = "SELECT * FROM user"; 
mysqli_query($db, $query) or die('Error querying database.'); 

//Step3 
$result = mysqli_query($db, $query); 
$row = mysqli_fetch_array($result); 

while ($row = mysqli_fetch_array($result)) { 
    echo $row['USERNAME']; 
} 

?> 

并没有任何反应,只是空白屏幕

+0

你确定你实际上是从'mysqli_fetch_array'获取数据吗?也许你的用户表是空的 – cwallenpoole

+0

'$ row = mysqli_fetch_array($ result); while($ row = mysqli_fetch_array($ result))'这肯定是失败的。 –

+0

注意:'mysqli'的面向对象的接口明显较少,使得代码更易于阅读和审计,并且不容易与陈旧的'mysql_query'接口混淆。在你过于投入程序风格之前,它是值得转换的。例如:'$ db = new mysqli(...)'和'$ db-> prepare(“...”)过程接口是PHP4时代的一个神器,当引入mysqli API时,不应该在新的代码 – tadman

回答

1

你有两个查询并在代码mysqli_fetch_array两次。

当您第二次调用mysqli_fetch_array时,该阵列需要重置。

为简单起见,请尝试删除这一行(不在while循环中),因为它不是必需的。上复位所述阵列中的指针

$row = mysqli_fetch_array($result); 

的更多信息可在这里找到:

+0

谢谢!这是失败的原因! –

+0

如果可以接受,请接受答案 - 谢谢。 – Colin

0

只是删除或者同时($行= mysqli_fetch_array($结果))和$ row = mysqli_fetch_array($ result)。