我需要使用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”
为什么?
答案 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_object
,mysql_fetch_assoc
,mysql_fetch_row
等函数来获取所需的结果集。请查看手册:
答案 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);
?>
希望这会对你有所帮助...... :)