Автор Тема: Не мога да разбера защо не ме логва  (Прочетена 9577 пъти)

0 Потребители и 1 Гост преглежда(т) тази тема.

Avalanche

  • Administrator
  • Hero Member
  • *****
  • Благодарности
  • -Казани: 65
  • -Получени: 275
  • Публикации: 2602
  • meow
Re: Не мога да разбера защо не ме логва
« Отговор #30 -: 22 Април 2012, 13:46:36 »
Имам един въпрос свързан с session_start ако го сложа само в мy_header на function.php при логване условията в if се изпълняват и ме прехвърля към index.php с изключение на условието $_SESSION['is_logged']=true; понеже според мен в страницата не е стартирана session_start () а извикването на my_header е след това условие в страницата. Но ако сложа в началото на страницата session_start () при влизане в страницата да се логвам ми изписва като забележка, че session_start () се дублира и ще игнорира едната, но кода си работи нормално. Как е правилно да се направи ? И втория ми въпрос е като се логна нормално и ме прехвърли към инdex.php, ако затворя директо браузера или отворя нава страница и стартирам инdex.php ми показва, че съм логнат и ми помни данните с които съм се логнал последния път. Това заради бисквитка при логване ли е ? Защото ако си излеза чрез логоут и си destroy сесията при отваряне на нова страница си иска да се логна както трябва да си е. Благодаря предварително на хората които ще имат желание да ми отговорят :)
По принцип session_start трябва да ти е най-отгоре в кода, точно след отварящия таг на php. Което ще рече, че трябва да го сложиш във всеки файл по отделно, а не да го include-ваш чрез файл.

За втория въпрос - сесията по принцип се пази докато не затвориш браузъра и ще ти работи и в другите табове. С FireFox, при определени настройки и условия, може да накраш сесията да ти се пази дори и като затвориш браузъра.
"Компютрите не правят каквото искаме, а каквото им кажем." Ако разбереш какво значи това няма да имаш големи проблеми, нито с никоя ОС, нито език, или софтуер.
Аз не съм програмист между другото!

bgludost

  • Newbie
  • *
  • Благодарности
  • -Казани: 0
  • -Получени: 0
  • Публикации: 41
Re: Не мога да разбера защо не ме логва
« Отговор #31 -: 22 Април 2012, 14:04:36 »
Благодаря ти отново, че ми отговаряш на въпросите :) Странното е че firefox не ми помни последната сесия и данни с които съм се логнал и ми иска да се логна пак след като съм затворил браузера, а IE ми ги помни и ако не излеза от Изход за да се унищожи сесията,а просто го затворя, при отварянето отново се логва автоматично. Макар че съм настроил IE да не ми запазва бисквитки и хронология след като затворя браузера  ??? 
« Последна редакция: 22 Април 2012, 14:26:21 от bgludost »

Avalanche

  • Administrator
  • Hero Member
  • *****
  • Благодарности
  • -Казани: 65
  • -Получени: 275
  • Публикации: 2602
  • meow
Re: Не мога да разбера защо не ме логва
« Отговор #32 -: 22 Април 2012, 14:30:32 »
Благодаря ти отново, че ми отговаряш на въпросите :) Странното е че firefox не ми помни последната сесия и данни с които съм се логнал и ми иска да се логна пак след като съм затворил браузера, а IE ми ги помни и ако не излеза от Изход за да се унищожи сесията,а просто го затворя, при отварянето отново се логва автоматично. Макар че съм настроил IE да не ми запазва бисквитки и хронология след като затворя браузера  ???  Като поставя във всички страници session_start включително и в MY_header трябва ли да ме претеснява тази забележка която ми показва Notice: A session had already been started - ignoring session_start() in C:\xampp\htdocs\mcf\function.php on line 2
  при влизане в страницата lоgin.php
Ами то си го пише какво става: "Сесия е била вече стартирана, игнорирайки session_start в ...function.php на ред 2". Демек тоя ред не се чете от php и нищо не прави.
"Компютрите не правят каквото искаме, а каквото им кажем." Ако разбереш какво значи това няма да имаш големи проблеми, нито с никоя ОС, нито език, или софтуер.
Аз не съм програмист между другото!

bgludost

  • Newbie
  • *
  • Благодарности
  • -Казани: 0
  • -Получени: 0
  • Публикации: 41
Re: Не мога да разбера защо не ме логва
« Отговор #33 -: 22 Април 2012, 14:41:43 »
Да да аз това го оправих ама явно малко по късно съм редактирал съобщението и си го пречел вече :) Мерси все пак за отговора