好的,所以我的网站有一个链接,您可以在其中搜索用户并转到他们的个人资料。您键入用户名,在下一页上,它会告诉您用户名是否存在,并为您提供链接。我想我已经正确编码了一切,但显然没有。
以下是发生的情况:(我的网站回显了两个页面,如果您已登录则为一个页面,如果您未登录则为一个页面)。如果您已登录并输入真实的用户名,那么它将正确显示我想要的文本和链接。但是,如果您在登录时键入假用户名,则只会显示默认文本,而不是我在此页面中需要的文本。
当您未登录时,无论您键入什么内容,它都只显示默认文本。
有人可以帮我看看这段代码吗?
displaytext的默认文字:
$displaytext = "Error";
$srstrSQL = "SELECT * FROM Users_For_CoinAwards WHERE Username = '$usersearched'";
$rs3 = mysql_query($srstrSQL, $connection);
while($row3 = mysql_fetch_array($rs3)){
if ($row3['Username'] == $usersearched)
{
$displaytext = "The user " . $row3["Username"] . " has been found. Please click on the below link to visit their profile.";
$displaylink = "<a href='http://www.coinawards.net63.net/user/" . $row3['Username'] . ".php' id='displaylink'>" . $row3['Username'] . "</a>";
}
else
{
$displaytext = "Sorry, the user " . $row3["Username"] . " was not found. Please check your query and try again.";
}
}
$row3 = mysql_fetch_array($rs3); print_r($row3);
好的,这是显示文字的部分:
'。 $ displaytext。 “
我仔细检查以确保上面的代码是否相同如果您已登录,但结果仍然不同。
编辑:
你可以在http://www.coinawards.net63.net/
看到他自己发生了什么只需点击黄色的“用户搜索”按钮,然后输入一系列奇怪的随机字符。
它将带您进入包含以下代码的新页面。
答案 0 :(得分:1)
else if ($row3['Username'] !== $usersearched)
应该是
else if ($row3['Username'] != $usersearched)
答案 1 :(得分:1)
首先关闭停止使用mysql_ *已不再维护,并且建议您不再在新项目中使用它,请查看pdo或mysqli,如此处所见http://php.net/manual/en/function.mysql-query.php
我可以看到的问题是你没有检查你的查询是否返回任何结果,这就是为什么你的条件只返回一个结果。
答案 2 :(得分:1)
由于这是二元条件(即用户存在或不存在,因此根本不需要else if ($row3['Username'] != $usersearched)
。将其替换为else
。
while($row3 = mysql_fetch_array($rs3)){
if ($row3['Username'] == $usersearched){
... Your code here ...
}else{
$displaytext = "Sorry, the user " . $usersearched . " was not found. Please check your query and try again.";
}
}
答案 3 :(得分:0)
好的,试试吧。请尝试使用双引号或单引号的$ row [],将两者混合使用。
$srstrSQL = "SELECT * FROM Users_For_CoinAwards WHERE Username = '$usersearched' ";
$rs3 = mysql_query($srstrSQL, $connection);
while($row3 = mysql_fetch_array($rs3)){
$displaytext = "Error";
if (mysql_num_rows($rs3) == 1)
{
echo $displaytext ."The user " . $row3["Username"] . " has been found. Please click on the below link to visit their profile.";
echo $displaylink ."<a href='http://www.coinawards.net63.net/user/" . $row3['Username'] . ".php' id='displaylink'>" . $row3['Username'] . "</a>";
}
else
{
echo $displaytext."Sorry, the user " . $row3["Username"] . " was not found. Please check your query and try again.";
}
}
$row3 = mysql_fetch_array($rs3); print_r($row3);