Отображать форму только если cookie установлены в PHP и SQL?

Я пишу скрипт на PHP. Когда пользователь зашел на сайт, я установил файл cookie для запуска:

$cookie_name = "logged";
$cookie_value = $row['uid'];
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");

Затем они перенаправляются обратно на домашнюю страницу. Однако вместо того, чтобы встречаться с полем для входа в верхнем правом углу веб-страницы, я хочу, чтобы форма скрывалась, а вместо этого отображалась информация о пользователе. Тем не менее, на данный момент окно входа остается, даже если cookie-файл установлен. Вот код для поля входа в систему:

if (!isset($_COOKIE[$cookie_name])) {
echo '<form action="attempt.php" method="post">
<div align="right"><br />
Email Address:<br />
<input type="text" name="mail"><br />
Password:<br />
<input type="password" name="pword"><br />
<input type="submit" value="Login" />
</div>
</form>
<div align="right"><br />
</div>';
} else {
print '<a href=" . $_COOKIE[$cookie_name] . ".php">View my profile.</a>';
}

Спасибо заранее за любые советы 🙂

0

Решение

Я думаю, что вы не инициализировали $ cookie_name в форме входа.

Попробуй это:

$cookie_name = "logged";//add this before checking
if (!isset($_COOKIE[$cookie_name])) {
echo '<form action="attempt.php" method="post">
<div align="right"><br />
Email Address:<br />
<input type="text" name="mail"><br />
Password:<br />
<input type="password" name="pword"><br />
<input type="submit" value="Login" />
</div>
</form>
<div align="right"><br />
</div>';
} else {
print '<a href="' . $_COOKIE[$cookie_name] . '".php">View my profile.</a>';
}

Если это не решит вашу проблему, попробуйте установить error_reporting (E_ALL) и показать нам любое уведомление или предупреждение.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]