Php 如何从MYSQL中选择一行?

Php 如何从MYSQL中选择一行?,php,html,mysql,Php,Html,Mysql,我想从我的数据库中检索用户的信息。 到目前为止,我的代码如下所示: <?php $database="myweekdatabase"; $con = mysql_connect("localhost","root" ,"");//for wamp 3rd feild is balnk if (!$con) { die('Could not connect: ' . mysql_error()); } mysql_select_db("$database", $con); $User =

我想从我的数据库中检索用户的信息。 到目前为止,我的代码如下所示:

<?php
$database="myweekdatabase";
$con = mysql_connect("localhost","root" ,"");//for wamp 3rd feild is balnk
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("$database", $con);

$User = $_SESSION['Email']; //Uses the email for the current user logged in
$query = "SELECT * FROM myweekprofiles WHERE Email = '$User' ";
$result = mysql_query($query);     
?>

为什么我要将其作为输出?

首先,您不应该使用不推荐使用的mysql函数。 其次,我认为您应该阅读一些关于php/mysql的教程来学习如何管理数据库

如果您不知道如何做到这一点,您将很难在代码中做得更进一步。 关于这方面有很多教程。试着找到一个关于PDO或mysqli的比mysql_u函数好得多的函数

关于您的代码,您需要获取查询。mysql\u fetch\u行或mysql\u fetch\u数组或mysql\u fetch\u assoc。然后请求列。 要查看结果并理解它,请执行以下操作:

$array = mysql_fetch_array($result);
var_dump($array);

当您运行如上所述的查询时,您会在成功或失败时返回一个资源。现在,您需要使用另一种方法从收到的资源中获取数据

例如,要循环遍历结果,可以使用如下内容

while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
    echo $row[0];
    echo $row[1]; //etc...
}
或者如果要使用关联数组

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
    echo $row['field_name'];
    echo $row['other_field_name']; //etc..
}

这里有一个链接,指向使用foreach和使用mysql\u fetch\u数组获取数据的所有方法

<?php
$database="myweekdatabase";
$con = mysql_connect("localhost","root" ,"");//for wamp 3rd feild is balnk
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("$database", $con);

$User = $_SESSION['Email']; //Uses the email for the current user logged in
$query = "SELECT * FROM myweekprofiles WHERE Email = '$User' ";
$result = mysql_query($query); 
$data = mysql_fetch_array($result);

foreach($result as $data){
echo "<h3>Edit Your Profile</h3>";
echo "<h3>" . $data['anyColumnYouWantFromThemyweekprofiles'] . "</h3>";
}
?>

您将获得资源id 5作为输出,因为mysql\u查询在成功时返回资源。请参阅此处的文档:注意:虽然清理输入修复了大多数您没有解决的问题,但您确实不应该首先使用mysql_*函数。像PDO或Mysqli这样的东西工作得更好,因为准备好的语句更安全。
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
    echo $row['field_name'];
    echo $row['other_field_name']; //etc..
}
<?php
$database="myweekdatabase";
$con = mysql_connect("localhost","root" ,"");//for wamp 3rd feild is balnk
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("$database", $con);

$User = $_SESSION['Email']; //Uses the email for the current user logged in
$query = "SELECT * FROM myweekprofiles WHERE Email = '$User' ";
$result = mysql_query($query); 
$data = mysql_fetch_array($result);

foreach($result as $data){
echo "<h3>Edit Your Profile</h3>";
echo "<h3>" . $data['anyColumnYouWantFromThemyweekprofiles'] . "</h3>";
}
?>