Регистрация, авторизация

RomikChef

Guest
В скрипте, который "выводит", на самом деле ты стираешь куку

Чтобы стереть куку, надо установить ее с пустым значением.
$user_id у тебя в этом скрипте пустой.
Значит, ты стираешь куку с именем "uid"
 

Yuriy_S

-=PHP-Club=-
да, круто, работает. Щас буду циклом перебирать файл с паролями (по ид номеру, т.к он записывается в куки), ну и если найдет, то значить, присваиваем имя, надеюсь я правильно решил делать.....;)
 

Yuriy_S

-=PHP-Club=-
а кстати, как посмотреть или узнать, существует ли кука у юзера, ?
 

Yuriy_S

-=PHP-Club=-
Во, спасибо, работает.
как я сразу не догадался о тернарном операторе... :) (начинающий же, чайник :))
 

.des.

Поставил пиво кому надо ;-)
тернарный оператор это тот же if просто короче запись...
чтобы не путаться можешь вообще не юзать.
 

Yuriy_S

-=PHP-Club=-
Брейк, привет!
Ничего не мешает, просто если он включен - то испльзуем его!
Если нет- выводим форму для авторизации пользователя, если он не зареген, то говорим об этом, и предлагаем зарегиться, все просто :)
А как тогда записать с условием if.. мне бы if хотелось, так как нужно условие.
If (! isset($_COOKIE["uid"])){
....} - так что ли тогда....
 

.des.

Поставил пиво кому надо ;-)
Yuriy_S
хорошее объснение... молодец..
да правильно написал - ты написал если не установлена кука uid то

можешь наоборот
If (isset($_COOKIE["uid"]))
{
кука установлена!
}
else
{
проблемы пользователя; сам пусть вводит свой пароль!
}

breake понимаешь если он отключит куки, то ему придется каждый раз вводить пароль и логин при заходе на сайт. Так что ради него это делается :)
 

breake

Guest
Здравтсвуйте, Юрий!
Ага, понял. Т.е. надо сначала пытаемся найти куку с uid, если нет, то форму показываем. Тогда, единственное, Вам надо будет позаботится о том, чтобы uid был какой-нибудь по-мудреней. А условие, да, будет такое: if (!isset($_COOKIE["uid"])) { рисуем форму для авторизации} else...
 

.des.

Поставил пиво кому надо ;-)
естественно в доступ к банковскому аккаунту так никто делать не будет :)
 

Yuriy_S

-=PHP-Club=-
да, сделаю наоборот, будет удобнее.
>>>естественно в доступ к банковскому аккаунту так никто делать не будет
Какой банк, вы что? :)) (на самом деле в банках нету куков, там токо пароль, который хранится в папке системной с ограничением доступа и постоянно нада идентить логин, пароль, и он ещё там хешируется... - сам видел, знаю ;))

Если кто то не знает что я делаю, то делаю я точно такой же форум как этот, уже даже сделал, осталось регистрация, ну и оформить все как следует, я ж дизайнер, работаю...;)
 

breake

Guest
Юрий, а Вы случайно не делали что-то наподобие "пользователи, просматривающие форум"? А то очень интересно, как бы это реализовать... Спасибо!
 

Yuriy_S

-=PHP-Club=-
К сожалению пока не делал, но думал, и буду делать.
Как это можно сделать (только мое мнение :)):
1. Сессии - хотя это не очень подходящий вариант.
2. Теже самые куки, то есть пока пользователь на опред. странице форума, как только покидает страницу - куки убиваются. (то есть так же, БД или файл с юзерами создаем, ид номер, имя и просто выводим имена тех айдишников которые в куках передаются на сервер).
Я думаю это самый такой простой вариант...
 

breake

Guest
Да, надо подумать... Я на самом деле пытался пораспрашивать, получил не много ответов, но и это уже что-то. См. http://phpclub.net/talk/showthread.php?threadid=26886&rand=5 Я еще не успел разобраться и, тем более, почитать tips.pdf Но я думаю, чего-нибудь мы должны придумать :)
 

Yuriy_S

-=PHP-Club=-
хм.. там ничего нету такого полезного...;)
Да, об этом нужно хорошо подумать. Вот сейчас с регистрацией закончу, и буду делать.
А пока делаю регистрацию, есть довольно таки интересный вопрос.
Пароли и имена юзеров у меня храняться в текстовом файле, в виде id|name|password.
Я сделал 2 текстовые формы, одна ля ввода имена, другая для пароля. Вот сам скрипт:
PHP:
<?
echo "<form action=authorize.php method=get>
<input type=text name=name size=25>
<input type=text name=paaa size=25>
<input type=submit value=Авторизоваться>
</form>";

$file="user.txt";
$data=file($file);
for($i=0;$i<count($data);$i++){
list($id,$naim,$par)=explode("|", $data[$i]);
if ($name==$naim && $paaa==$par):
echo "ok";
endif;
}
?>
Так вот почему то когда я ввожу правильное имя и пароль - ничего не происходит, то естьь не выводится сообщение -"ок". А когда ставлю условие только на проверку введенного имени, то все работает, не подскажите в чем дело?
 
Сверху