|
|
|
| Приветствую всех!
У меня такой вопрос!
У меня есть форма для авторизации пользователей, осуществляется это действо следующим образом: вводится логин и пароль в форму, затем это всё методом ПОСТ отправляется обработчику, который открывает файл с названием того логина который был введён только что, но вот проблема, если такого фала не существует мне нужно чтобы выводилось следующее сообщение пользователю что то вроде «Пользователя с таким именем не существует» и снова выводилась форма для авторизации… вот такая вот загогулина, да и ещё вот что…
При регистрации нового пользователя создаётся файл с введёнными данными и называется он по имени которое ввёл пользователь, и надо сделать так чтобы если вдруг такой пользователь существует выдавать сообщение типа «пользователь с таким именем уже существует» и снова форма регистрации…
вот и последний третий вопрос.
Необходимо чтобы после регистрации и авторизации всё заносилось в «Печенья» (Куки), и чтобы пользователь мог не авторизовываться некоторое время…
И если не трудно подскажите как сделать чтобы некоторые сслыки на сайте открывались только если пользователь авторизован…
По сути мне прост не обходимо знать как определить авторизован ли пользователь и надо знать ещё существует ли файл с указанным именем или нет… вот однако так… буду рад если Вы мне поможете, заранее благодарю! | |
|
|
|
|
|
|
|
для: 10100100
(21.09.2005 в 16:38)
| | для проверки файла на существование надо использовать функцию file_exists($file);
после авторизации пользователя заводи сессию или куку, и по ней смотри если она существует, то показывай информацию, не существует - не показывай | |
|
|
|
|
|
|
|
для: P@Sol
(21.09.2005 в 16:46)
| | вот а немного по конкретнее можно, я в этом пока не совсем хорошо парю... как залезть в куку и куда вставлять то что показывать надо, показывать то Инклудом надо да? а можно сделать так что б показывать не инклудом а на самой странице чтоб просто открывался якорь? | |
|
|
|
|
|
|
|
для: 10100100
(21.09.2005 в 18:25)
| | Примерно следующим образом
<?php
if(!file_exists($login)) exit("Извините, такого пользователя не существует");
else
{
// Открываем файл
$fd = fopen($login, "r");
// ... и т.д.
}
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(21.09.2005 в 22:43)
| | спасибо большое с помощью этого скрипта я предотвратил так же повторную регистрацию того же ника что уже существует, но как мне залезть в куку чтобы посмотреть авторизован ли пользователь и в связи с этим выводить что либо? | |
|
|
|
|
|
|
|
для: 10100100
(22.09.2005 в 16:17)
| |
<?
if (login($username, $passwd)) //тут надо проверить вошел пользователь или нет
{
setcookie ("valid_user", $username, time()+604800); // если вошел записываем в куку его логин
}
else header("Location: index.php"); //если не вошел, то перебрасываем его на какую-нить страницу
|
чтобы проверить вошел он или нет
<?
if ($_COOKIE["valid_user"]) //если кука есть
{ показываем то что он должен видеть}
|
я рекомендую тебе пока пользовать сессии
http://www.softtime.ru/bookphp/gl8_1.php | |
|
|
|
|
|
|
|
для: P@Sol
(22.09.2005 в 17:05)
| | огромное спасибо! Получается "login" - это и есть проверка на то введены ли те или иные значения - так?
Я вот тоже подумываю о Сессиях - это кажись надёжнее и дольше хранится если я правильно понял... вот щас сижу как раз про них читаю, тяжело всётаки, только начал ведь!
а вот почему мне "пока" надо использовать Сессии? какая причина? | |
|
|
|
|
|
|
|
для: 10100100
(22.09.2005 в 17:09)
| | login - да это у меня функция проверки, вошел пользователь или нет
сессии работают, пока ты не закрыл браузер, куки можно хранить долго:)...почему пока куки?! хз..принцеп действия одинаков...хотя можно начинать и с куков (но надо предупреждать пользователя что ты его собираешься сохранить в куку - это раз, и второе надо проверить - включены у него куки или нет).. сессии работают всегда:) | |
|
|
|
|
|
|
|
для: P@Sol
(22.09.2005 в 17:16)
| | всмысле - "у меня"? а у других это по другому пишется чтоли?
блин - так куки получается надёжнее а то так чел закроет браузер и ему придётся снова авторизовываться.... блин - обломно, не так ли? | |
|
|
|
|
|
|
|
для: P@Sol
(22.09.2005 в 17:05)
| | эта сволоч на запятые ругается..
Parse error: parse error, unexpected ',' in z:\home\localhost\www\6\testform.php on line 14 | |
|
|
|
|
|
|
|
для: 10100100
(23.09.2005 в 15:07)
| | Прикрепите скрипт к сообщению - там просто где-то ошибка в синтаксисе (необязательно связанная с запятой)... | |
|
|
|
|
|
|
|
для: cheops
(23.09.2005 в 15:12)
| | так, ну эту часть я кажись отладил, а вот как всё таки корректно проверить создались лди куки и с помощью этого ВЫВОДИТЬ ИЛИ НЕ ВЫВОДИТЬ ТУ ИЛИ ИНУЮ ИНФУ? | |
|
|
|
|
|
|
|
для: 10100100
(23.09.2005 в 16:51)
| | Для этого необходимо проверить содержимое массива $_COOKIE - имеется ли там установленная переменная или нет. | |
|
|
|
|
|
|
|
для: cheops
(23.09.2005 в 15:12)
| | Я сам справился :)) СПАСИБО ВАМ ЗА ВАШУ РАБОТУ ГОСПОДА! ВАШ ПОРТАЛ ЕДИНСТВЕННЫЙ КОТОРЫЙ ДЕЙСТВИТЕЛЬНО ПОМОГАЕТ!!!!! | |
|
|
|
|
|
|
|
для: 10100100
(21.09.2005 в 16:38)
| |
<?
if(file_exists("$dist/$file"))
{
fopen("$dist/$file","rb");
}
else
{
echo("Пользователя с таким именем не существует");
}
?>
|
| |
|
|
|
|
|
|
|
для: BArt Simpson
(21.09.2005 в 16:47)
| | а что есть $dist? - путь к файлу чтоли? или что это вообще?
и что значит "rb"
расшифруйте пожалуйста... | |
|
|
|
|
|
|
|
для: 10100100
(21.09.2005 в 18:26)
| | 269484288 - rb - значит - read binary (читать бинарно), если никуешься бинарно
[поправлено модератором] | |
|
|
|