0

祝大家下午好被欣赏。让我们看看我的代码..

$emel=$_SESSION['emailid'];

echo $select="SELECT * FROM red where email = '$emel'";
$query = mysql_query($select);
$ustous = mysql_fetch_row(query );
echo $ustous['name'] ;

我回显选择查询,这很好,将结果显示为:

SELECT * FROM red where email = 'tracymmt@makemytrip.com'

名称,地址等未显示,浏览器未显示任何错误...帮助!提前感谢

4

6 回答 6

2

如果您希望使用数组中的字段名称检索值,您应该使用mysql_fetch_assoc()(参见: http: //php.net/manual/en/function.mysql-fetch-assoc.php )。

这将是您的问题的固定代码:

$emel=$_SESSION['emailid'];

$select="SELECT * FROM red where email = '$emel'";
$query = mysql_query($select);
$ustous = mysql_fetch_assoc($query);
echo $ustous['name'] ;

顺便说一句,自 PHP 5.5.0 起,mysql_* 函数已被弃用。您可能想使用 mysqli 或 PDO。

于 2013-05-18T09:47:37.627 回答
0
$ustous = mysql_fetch_row($query );
于 2013-05-18T11:53:41.500 回答
0

立即将您的 $query var 更正为:

$ustous = mysql_fetch_row($query ); 

使用mysql_fetch_assoc而不是 mysql_fetch_row或打印为$ustous[0]

fetch_assoc 只返回一个关联数组,您可以将其用作$ustous['name']

$emel=$_SESSION['emailid'];

echo $select="SELECT * FROM red where email = '$emel'";
$query = mysql_query($select);
$ustous = mysql_fetch_assoc($query );
echo $ustous['name'];
var_dump($ustous);
于 2013-05-18T09:35:39.220 回答
0

你的原因:

mysql_fetch_row(query );

没用是因为它将结果作为枚举数组返回。也就是说,它看起来像:

Array ( [0] => 1 [1] => Name [2] => Email )

如果你print_r.

您正在尝试在代码中调用关联数组的“名称”。所以,你会想要这样的东西:

Array ( [id] => 1 [Name] => Joe [email] => example@email.com )

因此,您可能希望使用mysql_fetch_assoc()ormysql_fetch_array()并将MYSQL_ASSOC其作为第二个参数传递给mysql_fetch_array().

如果您只想获取用户名,以下内容很有用:

$emel=$_SESSION['emailid'];

$select="SELECT * FROM red WHERE email = '$emel'";
$query = mysql_query($select);
$ustous = mysql_fetch_assoc($query);
echo $ustous['name'] ;

如果您想获取其他内容,例如用户登录记录,您可能还需要考虑通过循环运行它,以防数据库中存在多个数据实例。

就像是:

$emel=$_SESSION['emailid'];

$select="SELECT * FROM logins WHERE email = '$emel'";
$query = mysql_query($select);

echo "Login History <br>";
while ($row = mysql_fetch_assoc($query)) {
   echo $row['loginDate'];  
}

这只是一个粗略的例子。

不过,我绝对建议您查看 PDO。NetTuts+ 的 Jeffery Way 提供了一个很棒的教程,介绍如何使用 PDO 连接和提取数据库。

于 2013-05-18T10:44:32.513 回答
0

用这个。

$emel=$_SESSION['emailid'];

echo $select="SELECT * FROM red where email = '$emel'";
$query = mysql_query($select);
$ustous = mysql_fetch_array($query);
echo $ustous['name'];
于 2013-05-18T09:42:01.260 回答
0
$emel=$_SESSION['emailid'];

$select="SELECT * FROM red where email = '$emel'";
$query = mysql_query($select);

$ustous = mysql_fetch_row($query);
   $yourVar1 = $ustous[0];
   $yourVar2 = $ustous[1];
   $yourVar3 = $ustous[2];
于 2013-05-18T09:32:54.120 回答