Частый гость
Покинул форум
Сообщений всего: 189
Дата рег-ции: Июнь 2013
Помог: 0 раз(а)
|
нашел, был прикол в следующем. код работал нормально, пока не нажмешь "Выход" после этого скок не логинись, логин сбивался. В итоге сделал следующее:
при "Выходе" при очистке куки, вместо:
сделал:
весь код:
Спойлер (Отобразить)CODE ( htmlphp):
скопировать код в буфер обмена
<?php include('connect.php'); $userinfo=''; $state='0'; if( (isset($_COOKIE['login'])) and (isset($_COOKIE['password'])) ) { if (!isset($_GET['exit'])) { // если кнопка выход не была нажата $login = $_COOKIE['login']; $pass = $_COOKIE['password']; // проверяем наличие пользователя в БД и достаём оттуда пароль $sql="SELECT id, password FROM logins WHERE login='".$login."'"; if(strcmp($pass, $userinfo['password']) == 0) { //проверяем схожесть пароля из БД с паролем из куков // достаём все данные из БД $sql="SELECT * FROM logins WHERE login='".$login."'"; $userinfo=mysql_fetch_array($res); // в этой переменной будет лежать вся информация о пользователе из БД // устанавливаем куки для запоминания статуса пользователя $state = 1;// статус, если 1, тогда пользователь авторизован } } } else { //обнуляем куки, если была нажата кнопка выход } } if($state != 1) {// если после проверки куков, оказалось, что пользователь не авторизован, то идем дальше if( (isset($_POST['login'])) & (isset($_POST['password'])) ){ // если пользователь ввёл логин и пароль $login = $_POST['login']; // проверяем наличие пользователя в БД и достаём оттуда пароль $sql = "SELECT id, password FROM logins WHERE login='".$login."'"; $userinfo = mysql_fetch_array($res);// в этой переменной лежит пароль из БД и номер пользователя $pass = md5($_POST['password']); if(strcmp($pass, $userinfo['password'])==0){ // достаём все данные из БД $sql="SELECT * FROM logins WHERE login='".$login."'"; $userinfo=mysql_fetch_array($res);// в этой переменной будет лежать вся информация о пользователе из БД // устанавливаем куки для запоминания статуса пользователя, пароль шифруем $state = 1;// статус, если 1, тогда пользователь авторизован } else {echo "<script type='text/javascript'>alert('Не верный логин или пароль.');</script>";} } else {echo "<script type='text/javascript'>alert('Не верный логин или пароль.');</script>";} } } if($state != 1) { ?> <div id="log_in"> <form method="post" action=""><table> <tr><td>Логин: </td><td><input type="text" size="15" name="login"/></td></tr> <tr><td>Пароль: </td><td><input type="password" name="password" size="15"/></td></tr> <tr><td><input style="width:50px;margin-top:9px;margin-bottom:4px;" type="submit" value="Войти"/></td><td></td></tr> </table></form> <a href="http://my/Site/pages/register.php"><u>Регистрация</u></a> <hr style="margin-top:3px;"><center id="clickToShow"><h4 style="color:#036;">Авторизация</h4></center></div> <script src="http://code.jquery.com/jquery-2.1.0.min.js"></script> <script>$('#clickToShow').click(function(){$(this).parent().toggleClass('show');});</script> <? } else { ?> <div id="login"> <? echo 'Здравствуйте, <b>'.$userinfo["login"].'</b> <br /><a href="?exit=y"><u>Выход</u></a> ';} ?> </div>
Спасибо за помощ всем
Но только одно НО, на компе с денвером работает все ок, загружаю это все на бесплатный хостинг, авторизация все так же сбивается (в хостинге мб бок?)
|