-1

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

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

这是我的 HTML 代码:

<h3>Edit Your Profile</h3>
<?php echo "<h3>" .$result; "</h3>" ?>

到目前为止,这是我的输出:

Resource id #5

为什么我把它作为输出?

4

3 回答 3

2

当你像上面那样运行查询时,你会得到一个成功或错误返回的资源。您现在需要使用另一种方法从您收到的资源中获取数据。

例如,要遍历结果,您可以使用类似这样的东西

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..
}

这是所有方法的链接http://php.net/manual/en/book.mysql.php

于 2013-07-31T02:49:07.097 回答
1

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

如果您不知道如何做到这一点,那么您将很难在代码中走得更远。有很多关于这个的教程。尝试找一个关于 PDO 或 mysqli 的(比 mysql_ 函数好得多)

关于您的代码,您需要获取查询。(mysql_fetch_rowmysql_fetch_arraymysql_fetch_assoc)。然后要求一个专栏。要查看结果并理解它,请执行以下操作:

$array = mysql_fetch_array($result);
var_dump($array);
于 2013-07-31T02:45:41.037 回答
1

使用 foreach 并使用 mysql_fetch_array() 获取数据。

<?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>";
}
?>
于 2013-07-31T05:43:11.793 回答