使用PHP检索MySQL字段

使用PHP检索MySQL字段,php,mysql,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("

我需要使用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”


为什么

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

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

您必须使用诸如
mysql\u fetch\u object
mysql\u fetch\u assoc
mysql\u fetch\u row
等函数来获取所需的结果集。请在此处查看手册:

注意:

从PHP5.5.0开始,此扩展已被弃用,并将在中删除 未来。相反,应该使用MySQLi或PDO_MySQL扩展


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

$data = mysql_fetch_assoc($result);
print_r($data);
您需要对要检索的每一行重复mysql\u fetch\u assoc()调用,直到它返回false,表示没有更多的行,这可以在while循环中完成,如下所示:

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

尝试在任何变量中获取结果,并打印它将正常工作
像这样:

<?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);
?>


希望这能帮助你……:)

我选择PDO。从我知道它以来就一直在使用它!:)它又快又有力!的确如此,但这与这个问题无关。如果他使用MySQLi,他也会犯同样的错误。