Привет. Это снов я. У меня опять больная идея. Вообщем 3 вопроса: 1. Как проверить пустое ли поле a форме до момента отправки (на javascr то if form.name=""), а на PHP аналог найти не могу, 2. Всё это вот к чему, решил испробовать: авторизация по знач сессии т.е. если переменые в сессии зарегины то переход, если переменные пустые - то запрет 3. И покажите на примере как задать длительность сессии. У меня как всегда чумовые идейки. да, ещё у меня почему-то не получилось передать ip через сессию через $REMOTE_ADDR; Хотелось бы услышать ваше предложеня по этим конкреиным вопросам, а потом уж...
Слышь умелые... Вы ещё смайлов нарисовали бы до жоп.... И лады. А афтор дествительно не в теме. А то хюл... ему тут делать. Всех благ. а то с книжкой тому цитата
ТЫ ж мне помог в тот раз и я те до сих пор благодарен. А мое сообшение было адресовано другим господам, которые начали угорать в прямом эфире. Это уже проехали, нормально потом поговорили и усё путём. Я сюда за помощью пришёл,а меня высмеювают. Вы хоть поняли над чем смеялись, я то до сих пор в пролёте. А суть такая: Есть форма регистрации (sms биллинг (поле для пароля)+мои добавки полей ввода в форме), где передаются n-переменных, (меня интересует логин - для приветствия ), при каждой регистрации - все данные формы - сохраняются (+ведётся учёт кол-ва регистраций). пример http://vasinsky.com/join.php Пароль действует 72 часа. Скрипт проверки пароля происходит на стороне стороннего сервера, к которому доступа я не имею. Смысл идеи таков: т.к. пароль валиден 3 дня -> след-но пользователь и будет им пользоваться 3 дня, при этом у него возникает необходимость каждый раз регится, а след-но и кол-во регистраций становится мнимым - я не хочу использовать авторизацию пользователя (просто не хочу лишний раз напрягать посетителя). Читал, знаю что 1. нужно использовать сессии для узнавания посетителя при его перемешении по разделам (каждая страница разделов, снова предлогает ввести пароль - так уж работает партнёрск. скрипт биллинга) 2. использовать cookies для узнования пользователя при повторном заходе на сайт Необходимо после первой регистрации - узнавать пользователя - молча по ip (в течении 72 часо) и не предлогать ему заново авторизироваться, при этои учесть что нужно встретить его по имени и то что пароль валиден 72 часа, т.е. по истечении данного периода - не узновать посетителя предномеренно. Если пользователь с другого ip - его проблемы Не ужеле не интересно?
Как проверить пустое ли поле a форме до момента отправки (на javascr то if form.name=""), а на PHP аналог найти не могу, здесь я решил во время сессии (после регистрации) - передовать имя, т.к. базы как таковой нет - поэтому хотел просто проверять значение переменной - если есть то вперёд, - если нет то форма регистрации.
Так...я смотрю у вас всё пренципиально Начало такое Работает вот так Регистрируем <?php session_start(); $sms=$key; $username=$name; $ip=$_SERVER['REMOTE_ADDR']; session_register("sms"); session_register("username"); session_register("ip"); ?> Встречаем юзера 'Здрасти, '.$_SESSION['username'].',пароль:'.$_SESSION['sms'].' ip:'.$_SESSION['ip']. Теперь я так понимаю - юзеров будет не один - нужно как то присвоить какой-то номер чтоли, у каждого юзверя - своя ссесия, или ни чё делать не надо?
php - серверный язык, как вы хотите проверить на сервере, заполнено ли поле или нет? только AJAX. Где ваш здравый смысл? И почему вас JS не устраивает?
Ну во первых - проверить пустое поле как я поня очень просто - if ($name_pole == "") - т.е. значение из формы небыло передано, но сейчас я от этого отказался. Всмысле - алгоритм работает должен был выглядеть так: юзер заполняет форму -> жмёт отправить -> проходит проверка пароля (скрипт на удалённом сервере) -> пароль верен -> переходит на страницу, где стартует сессия (в ней регистрируются некие поля формы) -> -Юзер начинает бродить по сайту (каждая станица оного защищена тем замым скриптом для проверки пароля - т.е. на каждой новой странице - даже если пользователь ввел пароль - этот глупый скрипт просил снова и снова ввести его) Я хотел сделать так После первой регистрации - все данные пользователя зарегины в сессии , и если он переходил на новую страницу, то сначала работал мой скрипт - который сначала проверял зарегина ли переменная (скажем 'имя')- если зарегина - то я обходил тот скрипт валидности пароля - если переменная не зарегина - то я выводил форму регистрации. Сейчас же я хочу использовать cookie - с продолжительностью жизни 3 дня (т.к. пароль валиден тоже 3 дня.) Скорее всего придётся выдёргивать ip юзера - заносить в базу и каждый раз проверять - если ip есть и cookie живы - то я приветствую юзера по имени и не показываю ему форму регистрации.
Игорь_Vasinsky ваш вопрос был PHP: if ($name_pole == "") плохо. лучше: PHP: if(empty($variable)) [/php]
дадада где то я видел, но забыл..... спасиб. пригодиться. Раз уж ты на связи скажи - когда я задаю сессию - мне необходимо для неё имя и индефикатор ?
Если собрались работать с сессиями, настоятельно рекомендую, прочитать о них. http://phpfaq.ru/session#main
Вот блин раньше всё работало так: Код (Text): <?php session_start(); $sms=$key; $username=$name; $ip=$_SERVER['REMOTE_ADDR']; session_register("sms"); session_register("username"); session_register("ip"); ?> Встречаем юзера Код (Text): 'Здрасти, '.$_SESSION['username'].',пароль:'.$_SESSION['sms'].' ip:'.$_SESSION['ip']. теперь я узнаю толь ко ip, а астальное пишет Undefined variable
К слову для безопасности это со всем не приемлимо. Если переменные $key; и $name; переменные с формы - тогда это уж со всем опасно.
register global = off Отключен передача переменных только через суперглобальные массивы типа $sms=$_REQUEST['key']; А ещё лучше узнать какой метод используется в форме.
С сессией-то все в порядке. А вот переменные в сессии не имеют значений!!! $_GET или $_POST используйте...