我有这个代码,我的用户已经设置了所有的cookie,但它显示的文本没有全部设置。谁能解决这个问题?它显示的是第一个文本,而不是第二个文本,它在过去的一个小时里让我感到困惑。我错过了一些可笑的愚蠢行为吗?
if(!isset($_COOKIE['user']))
{
echo "You do not have access here";
}
if(isset($_COOKIE['user']))
{
$user = $_COOKIE['user'];
$lq = "SELECT havelair FROM users WHERE username = '$user'";
$lresult = mysqli_query($con,$lq);
$lrow = mysqli_fetch_array($lresult);
$lair = $lrow[0];
if($lair == '1')
{
if(!isset($_COOKIE['Ankou']) || !isset($_COOKIE['Durnburg']) || !isset($_COOKIE['Hardash']) || !isset($_COOKIE['Kashaer']) || !isset($_COOKIE['Wyrdwood']))
{
?>
text
<?php
}
if(isset($_COOKIE['Ankou']) && isset($_COOKIE['Durnburg']) && isset($_COOKIE['Hardash']) && isset($_COOKIE['Kashaer']) && isset($_COOKIE['Wyrdwood']))
{
mysqli_query($con,"UPDATE users SET havelair='2' WHERE username ='$user'");
?>
text
<?php
}
}
答案 0 :(得分:0)
print_r
输出为:
Array ( [Ankou] => visit [Hardash] => visit [Wyrdwood] => visit [Durnberg] => visit [Kashaer] => visit )
并且,在您的代码中,您有:
!isset($_COOKIE['Durnburg'])
注意拼写的差异。这可能是个问题。
此外,您的代码易受SQL注入攻击。看看这个question,看看如何解决问题的陷阱和想法。