使用PHP检索MySQL字段

时间:2013-01-16 09:24:58

标签: php mysql

我需要使用PHP从mySQL数据库中获取一个字段 问题是在我的mysql面板中我使用这个sql代码:

SELECT * FROM TESTS WHERE TEST_ID=1

我得到了我想要的东西(我看到我要显示的行) 但是,如果我在PHP中使用此代码:

<?php
$con=mysql_connect("localhost", "root", "psw")  or die("\nConnection Failed\n");

mysql_select_db("mydb")or die("\nDB Failed\n");

$query = "SELECT * FROM TESTS WHERE TEST_ID=1";
$result=mysql_query($query);

echo $result;
mysql_close($con);
?>

我得到的只是“资源ID#3”

为什么?

5 个答案:

答案 0 :(得分:3)

小心:

  

自PHP 5.5.0起,此扩展程序已弃用,并将在中删除   未来。相反,应该使用MySQLi或PDO_MySQL扩展。

答案 1 :(得分:3)

$ result是一个资源,它是mysql结果集的链接。要获得实际数据,您必须执行以下操作:

$data = mysql_fetch_assoc($result);
print_r($data);

您需要为要检索的每一行重复mysql_fetch_assoc()调用,直到它返回false,表示没有更多行,这可以在while循环中完成,如下所示:

while ($data = mysql_fetch_assoc($result)) {
    print_r($data);
}

答案 2 :(得分:1)

您可以使用mysql_fetch_assoc

$result=mysql_query($query);
while ($row = mysql_fetch_assoc($result)) 
{
    echo $row["userid"]; // sample column
    echo $row["fullname"];
    echo $row["userstatus"];
}

答案 3 :(得分:1)

您已收到MySQL资源,而不是您想要的结果集。您只收到了指向结果的指针。

您必须使用mysql_fetch_objectmysql_fetch_assocmysql_fetch_row等函数来获取所需的结果集。请查看手册:

http://php.net/manual/en/book.mysql.php

答案 4 :(得分:0)

尝试在任何变量中获取结果并打印它将起作用。 <是/> 像这样:

<?php
$con=mysql_connect("localhost", "root", "psw")  or die("\nConnection Failed\n");

mysql_select_db("mydb")or die("\nDB Failed\n");

$query = "SELECT * FROM TESTS WHERE TEST_ID=1";
$result=mysql_query($query);

$row = mysql_fetch_array($result)
print_r($row);

mysql_close($con);
?>

希望这会对你有所帮助...... :)