как установить php cookie с истечением срока действия, и если существует файл cookie, как перенаправить пользователя на другую страницу

Я хочу, когда пользователь придет на мою страницу index.php . Он должен создать файл cookie с истечением срока действия, и если пользователь снова попытается посетить эту страницу за 5 минут, он должен быть перенаправлен на страницу с показателем USER TIMEOUT.

index.php должен создать файл cookie

Если через 5 минут пользователь снова посещает эту страницу, он должен получить сообщение USER TIMEOUT .

Используйте это при входе в систему или методе при создании файлов cookie.

 setcookie("user", "User Name", time()+5*60); 

Синтаксис метода setcookie ()

 setcookie(name, value, expire, path, domain); 

где expire – время, в течение которого cookie истекает, вы можете дать это время относительно текущего времени, добавив несколько секунд к значению, возвращаемому методом time() , name – это имя файла cookie, по которому это значение будет доступ, а value – значение. См. Документацию здесь .

И на другой странице,

 if (!isset($_COOKIE["user"])) header("Location:timeout.php"); 

Методы setcookie () и header () должны быть вызваны до отправки вывода. Альтернатива (немного сложная) header (), которую вы можете сделать –

 if (!isset($_COOKIE["user"])) echo '<script type="text/javascript"> document.location = "timeout.php"; </script>'; 

Это перенаправит страницу с помощью javascript.

Содержание index.php-

 <?php session_start(); if(!isset($_SESSION['visited'])) { $_SESSION['visited'] = time(); setcookie("user", "User Name", time()+5*60); } else { if(!isset($_COOKIE["user"])) header("Location:timeout.php"); } ?> <html><body>This is my page</body></html> 

Содержимое timeout.php-

 <?php session_start(); unset($_SESSION['visited']); ?> <html><body>Timeout, again go to <a href="index.php">main page</a></body></html> с <?php session_start(); unset($_SESSION['visited']); ?> <html><body>Timeout, again go to <a href="index.php">main page</a></body></html> 
 if(!isset($_COOKIE["user"])) { $expire=time()+60*60*24*30; setcookie("user", "Alex Porter", $expire); //cookie for 5 mins $time = time()+60*5; setcookie("page_auth", "Alex Porter", $time); } else { if(isset($_COOKIE["page_auth"])) { header('location:timeout.php'); setcookie("user", "", time()-3600); } }