Свернутый текст
<?[SPAN=darling]php[/SPAN] include 'db.php';
$loginl = !empty($_POST['loginl']) ? $_POST['loginl'] : NULL;
/*проверка на существование пользователя с таким же логином*/
$result = mysql_query("SELECT `id` FROM `reg_li_ag` WHERE `loginl` = '$loginl'", $db);
$myrow = mysql_fetch_assoc($result);
if(empty($myrow['id']))
{
unset($loginl);
include'menugg2.php';
}
else
{
$_SESSION['loginl']= "$loginl";
/* провеку пробелы, чтобы теги и скрипты не работали
удаляем лишние пробелы*/
$loginl = stripslashes($loginl);
$loginl = htmlspecialchars($loginl);
$loginl = trim($login);
echo 'Привет, '. $_SESSION['loginl'] .'<br>';
}
?>
всё сессия есть и даже работает вот только тут не работает как мне-бы хотелось
не хватает какого-то условия и никак не соображу какого чтоб
после аторизации опять не выбрасывало форму (в смысле опять аторизоваться)
а так и оставалось авторизованным и выдавало Привет,жирафФФ
есль код формы; вот
Свернутый текст
<table width="209" border="0" cellpadding="0" cellspacing="0" bordercolor="#FF0000" bgcolor="#CCFFFF"
>
<tbody>
<tr>
<td height="23" align="center" ><?[SPAN=darling]php[/SPAN] include'menugg.php';?></td>
</tr>
<tr>
<td width="205" height="23" align="center" ><strong><a href="/yvsik/index1.php">ГЛАВНАЯ</a></strong></td>
</tr>
<tr >
<td width="205" height="23" align="center" ><strong>ПРЕДЛОЖЕНИЕ</strong></td>
</tr>
<tr>
<td width="205" height="23" align="center" ><strong><a href="/yvsik/agent.php">АГЕНСТВ</a></strong></td>
</tr>
<tr>
<td width="205" height="23" align="center" ><strong><a href="/yvsik/pred.php">ПРЕДПРИЯТИЙ</a></strong></td>
</tr>
<tr>
<td width="205" height="23" align="center" ><strong><a href="/yvsik/vakan.php">ВАКАНСИЙ</a></strong></td>
</tr>
<tr>
<td width="205" height="23" align="center" ><strong><a href="/yvsik/gorod.php">В ДРУГИХ ГОРОДАХ</a></strong></td>
</tr>
<tr>
<td width="205" height="23" align="center" ><strong><a href="/yvsik/adres.php">АДРЕСА</a></strong></td>
</tr>
<tr>
<td width="205" height="23" align="center" ><strong>ОБУЧЕНИЕ</strong></td>
</tr>
<tr>
<td width="205" height="23" align="center" ><strong><a href="/yvsik/lizen.php">ЛИЦЕНЗИЯ</a></strong></td>
</tr>
<tr>
<td width="205" height="23" align="center" ><strong><a href="/yvsik/regpol.php">РЕГИСТРАЦИЯ</a></strong></td>
</tr>
<tr align="right">
<td width="205" height="22"align="center" ></td>
</tr>
<tr>
<td height="23" align="center" ><strong>ЗАКОНЫ</strong></td>
</tr>
<tr>
<td width="205" height="23" align="center" ><strong>ОТЗЫВ</strong></td>
</tr>
</tbody>
</table>
Спустя 7 минут, 5 секунд (15.02.2011 - 22:53) Dron19 написал(а):
вместо сессий можешь использовать куки или совместно их использовать, например если откл куки у пользователя, то используешь сессии...
Спустя 3 минуты, 6 секунд (15.02.2011 - 22:56) T1grOK написал(а):
Идея в общем случае такая:
if ($_SESSION['loginl']){
страница которую видят только зарегистрированные
}else{
форма авторизации
}
Спустя 1 минута, 27 секунд (15.02.2011 - 22:58) Dron19 написал(а):
ага, а вот если он закроет браузер и снова запустит, то уже придется заново авторизовываться
Спустя 31 секунда (15.02.2011 - 22:58) Dron19 написал(а):
а вот если проверять на существование куки, то все тип-топ
Спустя 2 минуты, 40 секунд (15.02.2011 - 23:01) YVSIK написал(а):
так))))))))))))Dron19
это вопрос или ответ такой СПС!
в начале надо разобраться с сессиями потом приступим к кукам
а использовать буду конечно( как на душу придётся )
и то и другое
это вопрос или ответ такой СПС!
в начале надо разобраться с сессиями потом приступим к кукам
а использовать буду конечно( как на душу придётся )
и то и другое
Спустя 1 минута, 40 секунд (15.02.2011 - 23:03) YVSIK написал(а):
T1grOK а что код по другому выглядит чё-ль
Спустя 27 секунд (15.02.2011 - 23:03) Snus написал(а):
Писать в куки md5 логин + пароль, при запуске, если сессия сдохла, дергаем из кукисов логпас, сверяем с мускулом и пишем сессию.
Спустя 47 секунд (15.02.2011 - 23:04) T1grOK написал(а):
Dron19 - ну тут уже каждый выбирает кому как удобней. Вопрос автора темы состоит в том как различать авторизированных и неавторизированных пользователей. Так что по теме я ответил. Остальное уже усовершенствования.
YVSIK
Еще. Более правильно будет сделать вот эту часть:
вот так:
YVSIK
Еще. Более правильно будет сделать вот эту часть:
$myrow = mysql_fetch_assoc($result);
if(empty($myrow['id']))
вот так:
if(mysql_num_rows($result) > 0)
Спустя 2 минуты, 30 секунд (15.02.2011 - 23:06) Dron19 написал(а):
T1grOK, куки и сессии не одно и тоже...
Спустя 50 секунд (15.02.2011 - 23:07) Dron19 написал(а):
он же попросил помочь, что бы после авторизации опять не выдавало форму... А это куки
Спустя 4 минуты, 11 секунд (15.02.2011 - 23:11) T1grOK написал(а):
При использовании сессий с авторизацией все нормально, но как ты уже отметил при закрытии браузера все "слетает". Как по мне это даже плюс, забыл выйти и нормально, а с куками забыл выйти - кто-то другой каку сделал).
Спустя 1 минута, 44 секунды (15.02.2011 - 23:13) Snus написал(а):
T1grOK
Цитата |
YVSIK Еще. Более правильно будет сделать вот эту часть: $myrow = mysql_fetch_assoc($result); if(empty($myrow['id'])) вот так: if(mysql_num_rows($result) > 0) |
Это почему еще?
Спустя 5 минут, 19 секунд (15.02.2011 - 23:19) YVSIK написал(а):
понял так что без кук я этого уже не сделаю?
а елсе у клиента куки вырублены А?
так будь форма вылетать
мне надо чтоб на данном этапе не валетала форма
ваторизовался и привет ЖИРАФ
ещё раз с куками потом
сейчас сессии
а елсе у клиента куки вырублены А?
так будь форма вылетать
мне надо чтоб на данном этапе не валетала форма
ваторизовался и привет ЖИРАФ
ещё раз с куками потом
сейчас сессии
Спустя 1 минута, 38 секунд (15.02.2011 - 23:20) Snus написал(а):
YVSIK
Если куки выключил клиент - то пускай каждый раз вводит пароль собака
Если куки выключил клиент - то пускай каждый раз вводит пароль собака
Спустя 4 минуты, 5 секунд (15.02.2011 - 23:24) T1grOK написал(а):
YVSIK
Принято так, использование данной функции является предпочтительным.
К тому же ты извлекаешь массив результата, чтобы проверить есть ли что нибудь, а при использовании mysql_num_rows() сначала проверяешь, а потом извлекаешь.
То есть в некоторых случаях экономятся(хоть и ничтожно) ресурсы.
Принято так, использование данной функции является предпочтительным.
К тому же ты извлекаешь массив результата, чтобы проверить есть ли что нибудь, а при использовании mysql_num_rows() сначала проверяешь, а потом извлекаешь.
То есть в некоторых случаях экономятся(хоть и ничтожно) ресурсы.
Спустя 4 минуты, 19 секунд (15.02.2011 - 23:29) T1grOK написал(а):
<?php include 'db.php';
if(!$_SESSION['loginl']){
$loginl = !empty($_POST['loginl']) ? $_POST['loginl'] : NULL;
/*проверка на существование пользователя с таким же логином*/
$result = mysql_query("SELECT `id` FROM `reg_li_ag` WHERE `loginl` = '$loginl'", $db);
if(mysql_num_rows($result))
{
unset($loginl);
include'menugg2.php';
}
else
{
$_SESSION['loginl']= "$loginl";
/* провеку пробелы, чтобы теги и скрипты не работали
удаляем лишние пробелы*/
$loginl = stripslashes($loginl);
$loginl = htmlspecialchars($loginl);
$loginl = trim($login);
header("Location...")//редирект на самого себя, если используется одна точка входа
}
}else{
//тут вставляешь то что надо показать авторизированному пользователю
}
?>
Спустя 1 минута, 42 секунды (15.02.2011 - 23:30) YVSIK написал(а):
все об чём туточки мы говори это понятно но вопрос был про сессии и про то какое условие добавить чтоб опять форма не предлогала авторизоваться
все-гото А ТО СЕЙЧАс ЗАОРУ
T1grOK это уже по теме шас надо пробовать
все-гото А ТО СЕЙЧАс ЗАОРУ
T1grOK это уже по теме шас надо пробовать
Спустя 13 минут, 43 секунды (15.02.2011 - 23:44) Dron19 написал(а):
Если выключены, выследишь это и попросишь включить куки, иначе скажешь ему, что бы вводил постоянно данные.
Спустя 1 час, 43 минуты, 13 секунд (16.02.2011 - 01:27) sergeiss написал(а):
Давай еще раз, кратко и по порядку. Что ты хочешь, как это делаешь и что получается на самом деле.
Спустя 2 минуты, 9 секунд (16.02.2011 - 01:29) YVSIK написал(а):
вот готовый как надо и должно по моему работать
Свернутый текст
<?php include 'db.php';
if(!$_SESSION['loginl'])
{
$loginl = !empty($_POST['loginl']) ? $_POST['loginl'] : NULL;
/*проверка на существование пользователя с таким же логином*/
$result = mysql_query("SELECT `id` FROM `reg_li_ag` WHERE `loginl` = '$loginl'", $db);
if(mysql_num_rows($result))
{
unset($loginl);
include'menugg2.php';
}
else
{
$_SESSION['loginl']= "$loginl";
/* провеку пробелы, чтобы теги и скрипты не работали
удаляем лишние пробелы*/
$loginl = stripslashes($loginl);
$loginl = htmlspecialchars($loginl);
$loginl = trim($login);
header("Location: index1.php ");
}
}
else
{echo 'Привет, '. $_SESSION['loginl'] .'<br>';
//тут вставляешь то что надо показать авторизированному пользователю
}
?>
Спустя 2 минуты, 7 секунд (16.02.2011 - 01:31) sergeiss написал(а):
Это ты написал, что ты сделал А какой алгоритм работы ты ХОТЕЛ получить и что получилось на самом деле, ты не описал. Словами, без кода.
И еще - а где у тебя начало сессии? Его что-то не видать.
И еще - а где у тебя начало сессии? Его что-то не видать.
Спустя 2 минуты, 31 секунда (16.02.2011 - 01:34) YVSIK написал(а):
не хватает какого-то условия и никак не соображу какого чтоб
после аторизации опять не выбрасывало форму (в смысле опять аторизоваться)
а так и оставалось авторизованным и выдавало Привет,жирафФФ
после аторизации опять не выбрасывало форму (в смысле опять аторизоваться)
а так и оставалось авторизованным и выдавало Привет,жирафФФ
Спустя 1 минута, 21 секунда (16.02.2011 - 01:35) sergeiss написал(а):
На еще один вопрос ты не ответил: где у тебя начало сессии??? Где session_start()?
Спустя 2 минуты, 58 секунд (16.02.2011 - 01:38) YVSIK написал(а):
всё правильно человек подсказал но я не знаю как это редирект тут
на самого себя то есть аторизовался и больше нет формы аторизации
так сессион стар находиться на самой странице
куда подключаю этот обработчик и этот обработчик вставлен в меню
с формой
с чего всё начало это надо в первом посте смотреть
на самого себя то есть аторизовался и больше нет формы аторизации
так сессион стар находиться на самой странице
куда подключаю этот обработчик и этот обработчик вставлен в меню
с формой
с чего всё начало это надо в первом посте смотреть
Спустя 12 минут, 38 секунд (16.02.2011 - 01:51) sergeiss написал(а):
Цитата (YVSIK @ 16.02.2011 - 02:29) |
$_SESSION['loginl']="$loginl"; /* провеку пробелы, чтобы теги и скрипты не работали удаляем лишние пробелы*/ $loginl = stripslashes($loginl); $loginl = htmlspecialchars($loginl); $loginl = trim($login); header("Location: index1.php "); |
Вот эту часть не понял... Во-первых, двойные кавычки тут не нужны: = "$loginl" - пиши это без кавычек.
А во-вторых... Зачем ты делаешь 3 действия надо переменной, если потому тут же идет переход на другую страницу? Эта переменная теряется.
Далее. Перед строкой if(!$_SESSION['loginl']) напиши что-нибудь типа
var_dump( $_SESSION['loginl'] );
чтобы убедиться, что переменная сессии была передана.
А header замени (на время отладки) на
header("Refresh: 30, index1.php ");
exit();
тогда редирект будет сделан только через 30 секунд и ты успеешь спокойно прочитать, что было написано до редиректа. И еще. Сразу же после редиректа пиши exit(), чтобы дальнейшая часть скрипта не обрабатывалась.
Спустя 2 часа, 3 минуты, 57 секунд (16.02.2011 - 03:55) YVSIK написал(а):
ВсЁ ВсЁёёёёёёёёёёёёёёёЁЁЁЁЁЁЁЁЁЁЁЁЁЁЁЁЁЁЁ))
никакого редиректа
специально для T1grOK респект полное внимание
ну полная благодарность в правильном направлении вы мен отправили НЕТ СЛОВ !!
для sergeiss так-же бла-го-да-рю
вот такой код; все надо тольк найти отличие
ну это для истории уже важно
смысл такой
есль нет сессии аторизуйся;
есль нет логина регистрируйся а потом логинься;
а есль есть и то и другое Привет ЖираФФФ!
простота она всегда мать таланта ПОНИМАЕШЬ!!!
конечно-же ещё надобно доработать скажем так
безопасность добавить; но это уже детали
никакого редиректа
специально для T1grOK респект полное внимание
ну полная благодарность в правильном направлении вы мен отправили НЕТ СЛОВ !!
для sergeiss так-же бла-го-да-рю
вот такой код; все надо тольк найти отличие
ну это для истории уже важно
<?php include 'db.php';
if(!$_SESSION['loginl'])
{
$loginl = !empty($_POST['loginl']) ? $_POST['loginl'] : NULL;
$result = mysql_query("SELECT `id` FROM `reg_li_ag` WHERE `loginl` = '$loginl'", $db);
if(mysql_num_rows($result))
{
$_SESSION['loginl'] = $loginl;
echo 'Привет, '. $_SESSION['loginl'] .'<br>';
}
else
{
unset($loginl);
include'menugg2.php';
}
}
else
{
echo 'Привет, '. $_SESSION['loginl'] .'<br>';
}
?>
смысл такой
есль нет сессии аторизуйся;
есль нет логина регистрируйся а потом логинься;
а есль есть и то и другое Привет ЖираФФФ!
простота она всегда мать таланта ПОНИМАЕШЬ!!!
конечно-же ещё надобно доработать скажем так
безопасность добавить; но это уже детали
_____________
«Гнусное свойство карликовых умов приписывать
________________!свое духовное убожество другим!»
___О) как-же он прав=>__________________ © Оноре де Бальзак.
отличный хост(рекомендую !! )
My MVC-CMV