Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Запомни меня

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
shahin
Отправлено: 02 Августа, 2014 - 00:55:57
Post Id


Забанен


Покинул форум
Сообщений всего: 116
Дата рег-ции: Март 2014  


Помог: 0 раз(а)




Хочу добавить функцию запомнить но никак не получается, перелазил весь инет найденое не устраивает.
Вот код:
Код:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. require_once "../includes/db.php";
  3. require_once "../includes/core.php";
  4. $salt = '$2a$8$'.substr(str_replace('+', '.', base64_encode(pack('N4', mt_rand(), mt_rand(), mt_rand(),mt_rand()))), 0, 22) . '$';
  5. $login = filter_input(INPUT_POST, 'login', FILTER_SANITIZE_STRING);
  6. $pass = filter_input(INPUT_POST, 'pass', FILTER_SANITIZE_STRING);
  7. $pass = md5(md5(md5(trim($_POST['pass'] && $salt))));
  8. if (Auth($login, $pass)) {
  9. $_SESSION["login"] = $login;
  10. $_SESSION["pass"] = $pass;
  11. header("Location: ".$_SERVER["HTTP_REFERER"]);
  12. exit;}else{ echo "Error"; }
  13. ?>
  14.  

Вот форма ввода:
Код:
CODE (html):
скопировать код в буфер обмена
  1. <form action="/tmp/auth.php" method="post">
  2. <input type="hidden" name="authform" value="1" />
  3. <h2 style="font-weight:bold;font-size:40px;padding:10px 0px 10px 0px"><?php echo $Lang['auth']; ?></h2>
  4. <input required="true" tabindex="1" name="login" type="text" id="login" placeholder="<?php echo $Lang['login']; ?>" />
  5. <input required="true" tabindex="2" name="pass" type="password" id="password" placeholder="<?php echo $Lang['password']; ?>" />
  6. <div class="td" style="margin-top:-50px;margin-left:-5px;font-size:20px;"><input class="td" name="on" type="checkbox" style="margin-left:-69px;margin-top:-15px;"/><div style='margin-top:-45px;margin-left:25px'><?php echo $Lang['remember'];?></div></div><div>
  7. <input id="login_btn" style='margin-top:-47px;' class="button" type="submit" name="log" value="<?php echo $Lang['go_enter']; ?>"/>

Делаю следущее:
Код:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. require_once "../includes/db.php";
  3. require_once "../includes/core.php";
  4. $salt = '$2a$8$'.substr(str_replace('+', '.', base64_encode(pack('N4', mt_rand(), mt_rand(), mt_rand(),mt_rand()))), 0, 22) . '$';
  5. $login = filter_input(INPUT_POST, 'login', FILTER_SANITIZE_STRING);
  6. $pass = filter_input(INPUT_POST, 'pass', FILTER_SANITIZE_STRING);
  7. $pass = md5(md5(md5(trim($_POST['pass'] && $salt))));
  8. if (Auth($login, $pass)) {
  9. $_SESSION["login"] = $login;
  10. $_SESSION["pass"] = $pass;
  11. if(isset($_POST['on'])){
  12. setcookie('login', $login ,time()+604800, "/");
  13. setcookie('pass', $pass ,time()+604800, "/");
  14. }
  15. header("Location: ".$_SERVER["HTTP_REFERER"]);
  16. exit;}else{ echo "Error"; }
  17.  
  18. ?>

Поправьте если что не так, и объясните как сделать форму вывода уже авторизованного с куками, так как с ссесией или по другому. Заранее благодарен!
 
 Top
shahin
Отправлено: 02 Августа, 2014 - 03:24:16
Post Id


Забанен


Покинул форум
Сообщений всего: 116
Дата рег-ции: Март 2014  


Помог: 0 раз(а)




Сделал но теперь другая проблема, работают только куки, а надо чтобы если куки выключены работала сессия,тоесть если куки включены выводится
PHP:
скопировать код в буфер обмена
  1.  $Auth = Check($_COOKIE['login'],$_COOKIE['pass']);

А если куки выключены то
PHP:
скопировать код в буфер обмена
  1. $Auth = Check($_SESSION['login'],$_SESSION['pass']);
 
 Top
DelphinPRO
Отправлено: 02 Августа, 2014 - 05:07:09
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




совмещать не пробовали?

1. проверяем куку, если есть пишем в сессию
2. проверяем сессию, если есть авторизован
3. если нет - гость


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
shahin
Отправлено: 02 Августа, 2014 - 05:49:26
Post Id


Забанен


Покинул форум
Сообщений всего: 116
Дата рег-ции: Март 2014  


Помог: 0 раз(а)




так дело в том что я не знаю как реализовать эту проверку, можете помочь?
 
 Top
shahin
Отправлено: 02 Августа, 2014 - 13:24:14
Post Id


Забанен


Покинул форум
Сообщений всего: 116
Дата рег-ции: Март 2014  


Помог: 0 раз(а)




На этом форуме похоже нет никого
 
 Top
DelphinPRO
Отправлено: 03 Августа, 2014 - 14:47:44
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




Чем помочь еще? Я вам алгоритм по пунктам расписал выше.


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
Edwvee
Отправлено: 04 Августа, 2014 - 09:45:26
Post Id


Частый гость


Покинул форум
Сообщений всего: 195
Дата рег-ции: Июнь 2013  


Помог: 1 раз(а)




shahin пишет:
Сделал но теперь другая проблема, работают только куки, а надо чтобы если куки выключены работала сессия,

Как тогда сессия будет работать? Надо ж айди сессии где-то хранить.
 
 Top
likvidator
Отправлено: 04 Августа, 2014 - 12:37:47
Post Id


Посетитель


Покинул форум
Сообщений всего: 416
Дата рег-ции: Март 2012  


Помог: 4 раз(а)

[+]


Edwvee пишет:
Как тогда сессия будет работать? Надо ж айди сессии где-то хранить.

session.use_trans_sid
 
 Top
esterio
Отправлено: 04 Августа, 2014 - 13:14:24
Post Id



Активный участник


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


Помог: 127 раз(а)




likvidator пишет:
session.use_trans_sid

unsecurity

В общем сама затея сохранять логин и пасс в куках плоха.

А гугл так и кишит разного рода набросками на эту тему
 
 Top
Edwvee
Отправлено: 05 Августа, 2014 - 13:22:39
Post Id


Частый гость


Покинул форум
Сообщений всего: 195
Дата рег-ции: Июнь 2013  


Помог: 1 раз(а)




likvidator пишет:
session.use_trans_sid
]
То есть как я понял айди будет гет параметром? Вот жесть тогда) Я такое на доисторических форумных движках видел только.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB