Написал код вроде все отлично.
НО, запись в сессию почему то проходит после 2 захода.
Тоесть ввожу логин пароль. Жму "Войти" Ухожу гулять по сайту, сессия пропадает, еше раз ввожу логин пароль авторизация проходит, и уже в сессию записываются нужные мне данные.
Вопрос: ПОЧЕМУ ??
PHP:
скопировать код в буфер обмена
<? { } if(isset($_POST['account'])) { $check=mysql_query("SELECT * FROM users WHERE login='".$_POST['account']."'"); if($check1['login'] == $_POST['account'] and $check1['password']==$_POST['password']) { $_SESSION['login']=$account; $_SESSION['avator']=$check1['avator']; $_SESSION['nick']= $check1['nick']; } else { echo '<p class="text_link">Такого логина либо пароля не сушествует</p>'; }} if(!isset($_SESSION['login']) ) { echo' <form method="post" action="" onsubmit="return checkform(this)"> <p class="text_link">Логин <input type="text" name="account" maxlength="15" /></p> <p class="text_link">Пароль <input type="password" name="password" maxlength="15" /> </p> <input type="submit" name="submit" value="Войти" /> </form>'; } else { echo '<p class="text_link">'.$_SESSION['nick'].'</p>'; echo'<a href="index.php?exit=1">Выйти из ('.$_SESSION['login'].') </a>'; } ?>
^^^^^^ Это тока кусок кода.
Вот еше.
CODE ( text):
скопировать код в буфер обмена
<script type="text/javascript">//<![CDATA[ function isAlphaNumeric(value) { if (value.match(/^[a-zA-Z0-9]+$/)) return true; else return false; } function checkform(f) { if (f.account.value=="") { alert("Заполните все поля формы"); return false; } if (!isAlphaNumeric(f.account.value)) { alert("Заполните все поля формы"); return false; } if (f.password.value=="") { alert("Не введен пароль"); return false; } if (!isAlphaNumeric(f.password.value)) { alert("444444"); return false; } return true; } //]]></script>
(Отредактировано автором: 09 Июня, 2009 - 05:51:50)
|