【发布时间】:2011-09-16 04:42:55
【问题描述】:
我有一个关于从数据库中检索数据的问题。我在 userrecord 中创建了一个数据库,它的表名为 tbl_user。我试图在他们登录系统时显示用户信息。即查看记录的用户配置文件。代码如下:
<?php
include("auth_user.inc.php"); // authrization page
$uname=$_SESSION['user']; // logged user name
$connection=mysql_connect("localhost","root"," ");
mysql_select_db("userrecord",$connection);
$sql=("select * from table_user where uname ='$uname'");
$result=@mysql_query($sql,$connection);
$row=mysql_fetch_array($result);
?>
<html>
<head>
<title>User Account</title>
</head>
<body bgcolor="#33CCFF">
<br>Your Details Information Is Shown Below:<br><br>
First Name:<?php echo $row['fname'];?><br>
Last Name:<?php echo $row['lname'];?><br>
Address:<?php echo $row['address'];?><br>
E-Mail:<?php echo $row['email'];?><br>
Gender:<?php echo $row['fname'];?><br>
User Name:<?php echo $row['uname'];?><br>
</body>
</html>
代码 echo $row[' '] 没有显示数据库中的记录。
【问题讨论】:
-
如果你回显 $uname 是否会显示预期的结果?
-
试试 var_dump($row) 看看有什么输出。这将告诉您是否在数组中得到结果。如果您得到结果,您将看到数据是如何返回的并知道如何访问它。
-
同样把@放在mysql_query之前意味着如果你的查询有任何错误,你不会看到它,删除@,如果只是一段时间看看你是否看到任何错误
-
尝试在你的 MySQL 中手动运行这个查询...然后看看它会检索到什么结果..Thx
-
如果你只是学习,你也应该放弃 php mysql 库以获得更安全的 mysqli 和 PDO 替代品。