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
Форумы портала PHP.SU :: Версия для печати :: Сессии и запоминание данных в полях
Форумы портала PHP.SU » PHP » Напишите за меня, пожалуйста » Сессии и запоминание данных в полях

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

1. zeloras - 17 Октября, 2008 - 16:12:50 - перейти к сообщению
Добрый день...
Если вам не сложно можете написать скрипт запоминания сессии, и введеные данные
<input type=text name=password value="пароль сохраненный браузером">
<input type=text name=login value="Логин сохраненный браузером">

Заранее спасибо
2. Champion - 17 Октября, 2008 - 16:46:51 - перейти к сообщению
Добрый день...
Если вам не сложно, можете почитать литературу по этому поводу сначала (напрмер, на этом сайте), а потом сказать нам в чем именно у вас загвоздка?

Заранее спасибо
3. zeloras - 17 Октября, 2008 - 21:58:18 - перейти к сообщению
Ам...загвоздка в том что вроде как сессия идет...но при обновлении страницы "умирает"
Ах да...можете зацинить эту функцию и прокомментировать?
PHP:
скопировать код в буфер обмена
  1. function see()
  2. {
  3. setcookie("TestCookie", $user, time()+3600);
  4. setcookie("TestCooki", $id, time()+3600);
  5. $_SESSION[password] = $_POST[password];
  6. $_SESSION[login] = $_POST[login];
  7. $password = MD5($_SESSION[password]);
  8. $username = $_SESSION[login];
  9. $ucc = mysql_query("SELECT * FROM userlist WHERE username='$username' AND password='$password'");
  10. if ($ucc == true) {
  11. $uca = mysql_fetch_array($ucc);
  12. $_SESSION[id] = $uca[user_id];
  13. $uid = $_SESSION[id];
  14. }
  15. return ($password.$username.$ucc.$uca.$uid);
  16. }
Я планирую использовать эту функцию как подтверждение подлиности сессии... но вот не уверен все ли верно...
4. valenok - 17 Октября, 2008 - 23:59:20 - перейти к сообщению
круто Нунчаки
5. Ыыы - 18 Октября, 2008 - 01:43:04 - перейти к сообщению
Зачем вам буфферизация, если вы отправляете куки до вывода в браузер, да еще и не закрыли эту самую буфферизацию! Я бы не стал юзать данный фрагмент кода, а покурил мануалы.
6. zeloras - 18 Октября, 2008 - 16:32:35 - перейти к сообщению
ММм....а можете посмотреть вот этот фрагмент, и сказать есть ли погрешности, и какие, и если не влом то помочь усовершенствовать функцию
PHP:
скопировать код в буфер обмена
  1. function sow()
  2. {
  3. if(!($_SESSION[login] == true AND $_SESSION[password] == true AND $_SESSION[id] == true))
  4. {
  5. $tlc = mysql_query("SELECT * FROM userlist WHERE user='$_SESSION[login]' AND pass='$_SESSION[password]' AND id=$_SESSION[id]");
  6. if($tlc == true)
  7. {
  8. $tla= mysql_fetch_array($tlc);
  9. } else {
  10. if (!$_POST[submit])
  11. {
  12. print <<<LOGINFORM
  13. <form method=post name=formtab>
  14. login: <input type=text name=login value=$_POST[login]><br>
  15. password: <input type=text name=password value=$_POST[password]><br>
  16. <input type=submit name=submit value=go>
  17. </form>
  18. LOGINFORM;
  19. } else {
  20. $lc = mysql_query("SELECT * FROM userlist WHERE user='$_POST[login]' AND pass='$_POST[password]'");
  21. if($lc == true)
  22. {
  23. $la = mysql_fetch_array($lc);
  24. $password = $lc[pass];
  25. $login = $lc[user];
  26. $pass = MD5($password);
  27. $uid = $lc[id];
  28. setcookie("login", $login, time()+3600);
  29. setcookie("password", $pass, time()+3600);
  30. setcookie("id", $id, time()+3600);
  31. } else {
  32. echo "false";
  33. }
  34. }
  35. }
  36. }
  37. return ('$tlc'.'$la'.'$password'.'$login'.'$pass'.'$uid');
  38. return true;
  39. }
7. NOBEL - 30 Ноября, 2008 - 11:09:20 - перейти к сообщению
Умирает говоришь? Слёзы в глазах
А ты её на каждой странице стартуешь?
Смотри не переборьщи, в иклудированных скриптах её не нмдо стартовать
(Добавление)
Я увидел, что старт сессии проходит в функции.
Пяткой чувствую, что лучше, всё таки это сделать в начале страницы....
8. zeloras - 30 Ноября, 2008 - 11:44:08 - перейти к сообщению
Все пасяб ^^ я изменил принцип...поставил старт сессии в начало ядра Улыбка теперь ошибок нету

PHP:
скопировать код в буфер обмена
  1. if(isset($_SESSION['login'])) {$slogin = $_SESSION['login'];}
  2. if(isset($_SESSION['password'])) $spass = $_SESSION['password']; else $spass = '';
  3. if(isset($_SESSION['uid'])) {$suid = $_SESSION['uid'];}
  4. if(isset($slogin) && isset($spass) && isset($suid)) {
  5. $lcc = mysql_query("SELECT * FROM users WHERE user='$slogin' && pass='$spass' && id='$suid'");
  6. $lca = mysql_fetch_array($lcc);
  7. echo mysql_error();
  8. if(mysql_num_rows($lcc) == 1) {

Воть Улыбка теперь вроде все нормально...хотя в будующем хочу сделать более надежней и больше xD
9. Ыыы - 30 Ноября, 2008 - 13:27:37 - перейти к сообщению
Цитата:
в начале ядра

Улыбнуло Улыбка

 

Powered by ExBB FM 1.0 RC1