Есть небольшая система авторизации которая успешно работает после входа, но после перехода на другие страницы авторизация пропадает и выкидывает на главную страницу.
Помогите пожалуйста сделать так что бы авторизация оставалась и на других страницах.
session_start пробовал писать.
BD
<?php
$db = mysql_connect ("mysql.hostinger.ru","u956476886_im116","25354525");
mysql_select_db ("u956476886_testtabl",$db);
?>
index
<?php
// вся процедура работает на сессиях. Именно в ней хранятся данные пользователя, пока он находится на сайте.
// Очень важно запустить их в самом начале странички!!!
session_start();
?>
<html>
<head>
<title>Главная страница</title>
</head>
<body>
<h2>Главная страница</h2>
<form action="testreg.php" method="post">
<!--**** testreg.php - это адрес обработчика. То есть, после нажатия на кнопку "Войти",
данные из полей отправятся на страничку testreg.php методом "post" ***** -->
<p>
<label>Ваш логин:<br></label>
<input name="login" type="text" size="15" maxlength="15">
</p>
<!--**** В текстовое поле (name="login" type="text") пользователь вводит свой логин ***** -->
<p>
<label>Ваш пароль:<br></label>
<input name="password" type="password" size="15" maxlength="15">
</p>
<!--**** В поле для паролей (name="password" type="password") пользователь вводит свой пароль ***** -->
<p>
<input type="submit" name="submit" value="Войти">
<!--**** Кнопочка (type="submit") отправляет данные на страничку testreg.php ***** -->
</p></form>
</body>
</html>
testreg
<?php
session_start();/* вся процедура работает на сессиях.
Именно в ней хранятся данные пользователя, пока он находится на сайте.
Очень важно запустить их в самом начале странички!!!*/
if (isset($_POST['login']))
{ $login = $_POST['login']; if ($login == '') { unset($login);} }
//заносим введенный пользователем логин в переменную $login, если он пустой, то уничтожаем переменную
if (isset($_POST['password']))
{ $password=$_POST['password']; if ($password =='') { unset($password);} }
//заносим введенный пользователем пароль в переменную $password, если он пустой, то уничтожаем переменную
if (empty($login) or empty($password)) //если пользователь не ввел логин или пароль, то выдаем ошибку и останавливаем скрипт
{
exit ("Вы ввели не всю информацию, вернитесь назад и заполните все поля!");
}
//если логин и пароль введены,то обрабатываем их, чтобы теги и скрипты не работали, мало ли что люди могут ввести
$login = stripslashes($login);
$login = htmlspecialchars($login);
$password = stripslashes($password);
$password = htmlspecialchars($password);
//удаляем лишние пробелы
$login = trim($login);
$password = trim($password);
// подключаемся к базе
include ("bd.php");// файл bd.php должен быть в той же папке, что и все остальные, если это не так, то просто измените путь
$result = mysql_query("SELECT * FROM users WHERE login='$login'",$db); //извлекаем из базы все данные о пользователе с введенным логином
$myrow = mysql_fetch_array($result);
if (empty($myrow['password']))
{
//если пользователя с введенным логином не существует
exit ("Извините, введённый вами login или пароль неверный.");
}
else
{
//если существует, то сверяем пароли
if ($myrow['password']==$password)
{
//если пароли совпадают, то запускаем пользователю сессию! Можете его поздравить, он вошел!
$_SESSION['login']=$myrow['login'];
$_SESSION['id']=$myrow['id'];//эти данные очень часто используются, вот их и будет "носить с собой" вошедший пользователь
{ if ($myrow['prava']=="admin")
{ exit ("Вы автоматизированы как Админ! <a href='GL/rabsklad.php'> Меню </a>");
// header("Location: GL/admin.php");//Админ
}
else {
exit ("
<div align='center' style='border: 0px solid blue; position:relative; top:100px; left:350px; height:100px; width:300px;'>
<font color='green'>Здарова: "."<font color='red'>".$name."</font>!</font>
Вы автоматизированы как Пользователь! <a href='data/tovar.php'> Меню </a><br/>
<a href='viiti.php'>выйти</a>
<br/>
</div>;");
//header("Location: GL/user.php"); //Пользователь
}
}
}
else
{
//если пароли не сошлись
exit ("Извините, введённый вами login или пароль неверный.");
}
}
?>