<?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>伙计们,我用这段代码来显示用户的详细信息,但仍然没有显示记录。
这段代码有什么问题?嗯..。没有错误,但它不工作。
:'(
发布于 2010-07-15 09:08:56
尝试添加如下所示的循环,将单个记录集替换为多个记录集。还要检查你的查询,看看它是否正确。
<?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>发布于 2010-07-15 08:29:18
尝试添加一个回显(mysql_error()),以查看除了一个糟糕的查询之外,是否还有MySQL错误。
发布于 2010-07-15 08:38:28
将error_reporting(~0)放在最上面,以确保您得到的报告中的所有内容都不太完美。做一个print_r( $_POST )来确保你在$_POST中得到了你认为你正在得到的东西。
如果您仍然没有找到问题,请提供更多上下文!(如:脚本输出)
(顺便说一句:你应该回显htmlspecialchars($user...);否则人们会把非常讨厌的东西放进去。)
并确保您的php.ini中有"short_open_tag = On“,或者使用
<?php而不是
<?到处都是!
https://stackoverflow.com/questions/3251613
复制相似问题