从数据库显示用户的记录

时间:2010-07-15 00:27:53

标签: php mysql html

<?php
include "db.php"; 
$username=$_POST['username']; 
$email=$_POST['email'];


$query="SELECT * FROM members where username = '".mysql_real_escape_string($username)."'";


$result=mysql_query($query)or die(mysql_error());


$user = mysql_fetch_assoc($result);
mysql_close();
?> <br /> <p></p>

Welcome back! Your details below: <br /><br /> 

<table border="1" cellspacing="2" cellpadding="5"> 
<tr> 
 <th>First Name</th> 
 <th>Last Name</th>
 <th>User Name</th>
 <th>Email</th> 
 <th>Age</th> 
</tr>

<?php

$firstname= $user['firstname']; 
$lastname= $user['lastname']; 
$username= $user['username']; 
$email= $user['email']; 
$age= $user['age']; 
?>

 <tr> 
   <td><? echo $firstname ?></td> 
   <td><? echo $lastname ?></td>
   <td><? echo $username ?></td>
   <td><? echo $email ?></td>
   <td><? echo $age ?></td>
 </tr>
</table>

伙计们,我使用此代码显示用户的详细信息,但仍然没有显示记录。

这段代码有什么问题?嗯...没有错误,但它不起作用。

:'(

3 个答案:

答案 0 :(得分:1)

尝试添加一个echo(mysql_error())以查看是否存在MySQL错误,而不仅仅是一个错误的查询。

答案 1 :(得分:0)

将error_reporting(〜0)置于最顶层,以确保您获得的报告不完美。做一个print_r($ _ POST),以确保你得到你认为你得到的$ _POST。

如果您仍未找到问题,请提供更多背景信息! (如:脚本输出)

(顺便说一下:你应该回复htmlspecialchars($ user [...]);否则人们可以把非常讨厌的东西放在那里。)

并确保您的php.ini中有“short_open_tag = On”,或使用

<?php

而不是

<?

无处不在!

答案 2 :(得分:0)

尝试在下面添加一个循环,用多个替换单个记录集。还要检查您的查询,看看它是否正确。

<?php
include "db.php"; 
$username=$_POST['username']; 
$email=$_POST['email'];


$query="SELECT * FROM members where username = '".mysql_real_escape_string($username)."'";

$result=mysql_query($query)or die(mysql_error());

//$user = mysql_fetch_assoc($result);



?> 
<br /> <p></p>

Welcome back! Your details below: <br /><br /> 

<table border="1" cellspacing="2" cellpadding="5"> 
<tr> 
 <th>First Name</th> 
 <th>Last Name</th>
 <th>User Name</th>
 <th>Email</th> 
 <th>Age</th> 
</tr>

<?php
while($user=mysql_fetch_array($result))
{
echo '<tr>';
echo '<td>'.$user['firstname'].'</td>
   <td>'.$user['lastname'].'</td>
   <td>'.$user['username'].'</td>
   <td>'.$user['email'].'</td>
   <td>'.$user['age'].'</td>';
echo '</tr>';
}
mysql_close();
?> 
</table>