Я сделал логин, который устанавливает куки со значением вмененных адресов электронной почты, так и в файле global.php, он хранит массив данных пользователей с помощью:PHP - setcookie(); не работает
$email = $_COOKIE["PeopleHub"];
$getuserdata = mysqli_query($con, "SELECT * FROM Earth WHERE email='$email'");
$userdata = mysqli_fetch_array($getuserdata, MYSQLI_ASSOC);
cookie не устанавливается, я знаю это, потому что я сделал тестовый файл:
echo $_COOKIE["PeopleHub"];
Он просто сделал пустую страницу.
Войти код (где установлен печенье):
<?php
include "global.php";
?>
<h2>Login</h2>
<?php
echo "We currently have <b>" . $usercount . "</b> members, <b>" . $onlinecount . "</b> of which are online. ";
?>
<br>
<br>
<?php
if(isset($_POST["email"])){
$email = $_POST["email"];
$password = sha1($_POST["password"]);
$check = mysqli_query($con, "SELECT * FROM Earth WHERE `email`='$email' AND `password`='$password'");
$check = mysqli_num_rows($check);
if($check == 1){
setcookie("PeopleHub", $email, 0, '/');
echo "We logged you in!";
}
else {
echo "We couldn't log you in!";
}
}
?>
<form action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="post">
Email <input name="email" placeholder="Email Address" required="" type="text"><br>
Password <input name="password" placeholder="Password" required="" type="password"><br>
<input type="reset" value="Start Over">
<input type="submit" value="Login">
</form>
Итак, мне нужно поставить ob_start(); в начале кода? – user2999920
Нажмите на ссылку буферизации вывода, которую я вам дал. Существует пример, который на самом деле использует setcookie(). –
Будет ли это работать, если я положил ob_start(); в верхней части глобального файла? – user2999920