<?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>
伙计们,我使用此代码显示用户的详细信息,但仍然没有显示记录。
这段代码有什么问题?嗯...没有错误,但它不起作用。
:'(
答案 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>