Я создаю простой скрипт входа и выхода, используя php и mysql, но когда я пытаюсь ввести login.php или индексный файл, я получаю сообщение об ошибке: ** Страница не перенаправляется должным образом. Firefox обнаружил, что сервер перенаправляет запрос на этот адрес таким образом, который никогда не будет завершен.
Иногда эта проблема может быть вызвана отключением или отказом принимать файлы cookie. ** Я не знаю, как решить или какая ошибка, если кто-нибудь поможет мне, я буду признателен
<?php require_once('connect.php'); ob_start(); session_start(); //checked wether the user is loged in or not $user = $_SESSION['username']; if(!isset($_SESSION['username'])) { $user = $_SESSION['username']; header("Location: index.php"); exit(); } else { header("Location: home.php"); } // login script if(isset($_POST['username'])&& isset($_POST['password'])) { $user_login = preg_replace('#[^A-Za-z0-9]#i', '', $_POST['username']); $user_password = preg_replace('#[^A-Za-z0-9]#i', '', $_POST['password']); $md5password = md5($user_password); $sql = mysql_query("SELECT id FROM members WHERE username = '".$user_login."' AND password = '".$user_password."'") or die ("could not select from database"); $userCount = mysql_num_rows($sql); if($userCount ==1) { while($row = mysql_fetch_array($sql)) { $id = $row['id']; } $_SESSION['id'] = $id; $_SESSION['username'] = $user_login; $_SESSION['password'] = $user_password; header("Location: index.php"); exit(); } else { echo "that info is incorrect"; exit(); } } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> </head> <body> <form action="login.php" method="post"> <input name="username" type="text" value="username" size="32" /> <input name="pass" type="password" value="password" size="32" /> <input name="login" type="submit" value="login" /> </form> </body> </html> <?php ob_end_flush(); ?>
<?php //home.php session_start(); $user = $_SESSION['username']; if(!isset($_SESSION['username'])) { header("Location: index.php"); exit(); } else { echo "hi $user you are loged in //Welcome to our website <a href=\"logout.php\">Logout</a>"; } ?>
<?php session_start(); session_destroy(); header("Location: index.php"); ?>