如何在PHP中从数据库中检索多行

时间:2012-12-14 12:28:13

标签: php mysql

我正在尝试从数据库中检索多行并使用php代码处理它作为服务的响应,但我不会检索所有值,只有表中的第一行显示,我怎样才能使dis工作?

这是我的代码:

$servername="localhost";
$username="root";
$conn=  mysql_connect($servername,$username)or die(mysql_error());
mysql_select_db("testing",$conn);
$sql="insert into login (src,dest)values('$from','$tona')";
$result=mysql_query($sql,$conn) or die(mysql_error());
$res = mysql_query("SELECT * FROM login");
$numrows = mysql_num_rows($res);
setcookie('a',$numrows);

4 个答案:

答案 0 :(得分:2)

喜欢这个

<?php
$servername="localhost";
$username="root";
$conn=  mysql_connect($servername,$username)or die(mysql_error());
mysql_select_db("testing",$conn);
$sql="insert into login (src,dest)values('$from','$tona')";
$result=mysql_query($sql,$conn) or die(mysql_error());
$res = mysql_query("SELECT * FROM login");
$numrows = mysql_num_rows($res);
while ($result=mysql_fetch_array($res)){

    echo $result['src']."<br/>";

}
setcookie('a',$numrows);

答案 1 :(得分:2)

注意不鼓励使用_mysql进行新的开发...... please read this on selecting a new API

这是非常基本的,但你需要像这样循环返回的结果:

$res = mysql_query("SELECT * FROM login");

while ($row = mysql_fetch_array($res, MYSQL_BOTH)) {
    // your columns are accessible using
    $row['columnname'];
    // or 
    $row[columnnumber];
}

Docs for mysql_fetch_array are here

mysql_query在成功时返回资源,在失败时返回false

答案 2 :(得分:1)

不推荐使用mysql_ * 使用

$res = mysql_query("SELECT * FROM login");
$numrows = mysql_num_rows($res);
while($row = mysql_fetch_assoc($res))
{
print_r($row);
}

答案 3 :(得分:0)

我看到你使用mysql而不是mysqli。请尝试更改为mysqli,因为这将成为新标准。从PHP 5.5.0版开始,mysql将被弃用。