2013-04-02 114 views
1

我正在使用mysql_fetch_query()创建数组,然后使用while函数打印数据库中的一个表,从而打印数据库中的某个表中的所有数据。从数据库中的表中打印数据

唯一的是,它正在跳过第一条记录并直接打印记录2.记录1确实存在于表中,并且被命名为这样。

有什么我失踪或需要添加?

mysql_connect("$host", "$username", "$db_password")or die("cannot connect"); 

$data=mysql_query("SELECT * FROM users")or die(mysql_error()); 
$info=mysql_fetch_array($data); 
while($info = mysql_fetch_array($data)){ 
    echo "<br />"; 
    echo "Record id: <strong>" . $info['id'] . "</strong>"; 
    echo "<br />"; 
    echo "Visit time and date: <strong>" . $info['visitDate'] . "</strong>";  
    echo "<br />"; 
    echo "Previous destination: <strong>" . $info['cameFrom'] . "</strong>"; 
    echo "<br />"; 
    echo "Browser used: <strong>" . $info['browser'] . "</strong>"; 
    echo "<br />"; 
    echo "Location of user: <strong>" . $info['location'] . "</strong>"; 
    echo "<p> </p>"; 
} 
+0

摆脱第一个'$ info = mysql_fetch_array($ data);'行。 – Passerby

回答

1
$info=mysql_fetch_array($data); 
while($info = mysql_fetch_array($data)){ 

只留下了条件,因为你让一个循环,这是第一个船长行之前

2

while循环之前删除此行:

$info=mysql_fetch_array($data); 

这将获取的第一条记录,而当你开始while循环是从第二排开始,因为你再打电话mysql_fetch_array()

+0

现在我明白了啊 –

0

你叫mysql_fetch_array()两次取

**$info=mysql_fetch_array($data); 
while($info = mysql_fetch_array($data))** 

所以你的第一个记录已经被第一次打电话给mysql_fetch_array()

只是删除第一个电话,它会正常工作。