В общем делал регистрацию по одному уроку, а чат по другому.
Для входа в чат нужен логин и email, вот подумал сделать так чтоб поля заполнялись автоматически и делался вход.
Но столкнулся с проблемами:
1. Вывод в строку логин получился с помощью кода
PHP:
скопировать код в буфер обмена
<input id="name" name="name" class="rounded" maxlength="16" value=" <?PHP if (empty($_SESSION['login']) or empty($_SESSION['id'])){echo "Гость";}else{echo "".$_SESSION['login']."";} ?>"/>
а вот email не получилось, так как не открыты сессии, решил открыть, в файле авторизации добавил строку и в индексном вверху вместо PHP:
скопировать код в буфер обмена
<?PHP // вся процедура работает на сессиях. Именно в ней хранятся данные пользователя, пока он находится на сайте. Очень важно запустить их в самом начале странички!!! include ("bd.php");// файл bd.php должен быть в той же папке, что и все остальные, если это не так, то просто измените путь if (!empty($_SESSION['login']) and !empty($_SESSION['password'])) { //если существует логин и пароль в сессиях, то проверяем их и извлекаем аватар $login = $_SESSION['login']; $password = $_SESSION['password']; $result = mysql_query("SELECT id,avatar FROM users WHERE login='$login' AND password='$password'",$db); if(empty($myrow['avatar'])) {$avatar = 'avatars/net-avatara.jpg';} else {$avatar = $myrow['avatar'];} //извлекаем нужные данные о пользователе } ?>
вставил
PHP:
скопировать код в буфер обмена
<?PHP // вся процедура работает на сессиях. Именно в ней хранятся данные пользователя, пока он находится на сайте. Очень важно запустить их в самом начале странички!!! include ("bd.php");// файл bd.php должен быть в той же папке, что и все остальные, если это не так, то просто измените путь if (!empty($_SESSION['login']) and !empty($_SESSION['email']) and !empty($_SESSION['password'])) { //если существует логин и пароль в сессиях, то проверяем их и извлекаем аватар $login = $_SESSION['login']; $email = $_SESSION['email']; $password = $_SESSION['password']; $result = mysql_query("SELECT id,avatar FROM users WHERE login='$login' AND email='$email' AND password='$password'",$db); if(empty($myrow['avatar'])) {$avatar = 'avatars/net-avatara.jpg';} else {$avatar = $myrow['avatar'];} //извлекаем нужные данные о пользователе } ?>
но не работает, да и аватарка перестала работать, откатил индексную и дальше начал думать. 2 часа ночи - идей нет, обращаюсь к профи. С заранее спасибо)
Представляю примерно такое авто заполнение:
PHP:
скопировать код в буфер обмена
<form id="loginForm" method="post" action=""> <input id="name" name="name" class="rounded" maxlength="16" value=" <?PHP if (empty($_SESSION['login']) or empty($_SESSION['id'])){echo "Гость";}else{echo "".$_SESSION['login']."";} ?>"/> <input id="email" name="email" class="rounded" maxlength="100" value=" <?PHP if (empty($_SESSION['email']) or empty($_SESSION['id'])){echo "Введите email";}else{echo "".$_SESSION['email']."";} ?>"/> <input type="submit" class="blueButton" value="Войти" /> </form>
Сразу ещё вопрос, реально сразу после авто заполнения чтоб делался вход?(Отредактировано автором: 22 Ноября, 2012 - 02:03:17)
|