Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 19:28 29.06.24 
Компютри и Интернет
   >> PHP
Всички теми Следваща тема *Кратък преглед

Тема Пак за сесиитенови  
Авторano (Нерегистриран)
Публикувано25.11.04 21:53



Здравейте,
на Linux-ски сървър с PHP v.4.3.8
(в php.ini е зададено session.use_cookies On, session.use_only_cookies Off, session.use_trans_sid On)
искам да нправя следното: на всяка страница от сайта да проверявам дали user-a се е логнал и ако да стартирам сесия, за да му предоставя повече услуги. Ако не продължавам без сесия докато не се сети да се логне.

Пробвам така:
на всяка страница:
session_start();
if (!isset($_SESSION['user'])) {session_unset(); session_destroy();}

Работи обаче има следния досаден ефект - още от първата страница всички линкове са с ?PHPSESSID=.... накрая

Как да го изчистя?
Благодаря предварително.
Между другото на Linux но с PHP v.4.2.2 същия код работи без този (д)ефект



Тема Re: Пак за сесиитенови [re: ano]  
Автор ro6avia (усер френдли)
Публикувано26.11.04 13:17





Обърни внимание на :
session.use_trans_sid


root@ro6avia#echo rm -rf * > /bin/seek_and_destroy
root@ro6avia#/bin/seek_and_destroy

Редактирано от ro6avia на 26.11.04 13:20.



Тема Re: Пак за сесиитенови [re: ro6avia]  
Авторano (Нерегистриран)
Публикувано26.11.04 15:16



Ro6av, моля те, уточни какво имаш в предвид!

Ако идеята ти е да го сетна session.use_trans_sid Off, тогава наиcтина няма ?PHPSESSID..... в линковете, но пък ако user-a отказва да приема cookies сесията няма да работи.

Благодаря за отделеното време.



Тема Re: Пак за сесиите [re: ano]  
Автор ro6avia (усер френдли)
Публикувано26.11.04 15:39



Избираш си

или ?ПХПСЕССИД или КУКИ
ако не взима куки-та - задължително транс сид

root@ro6avia#echo rm -rf * > /bin/seek_and_destroy
root@ro6avia#/bin/seek_and_destroy


Тема Re: Пак за сесиитенови [re: ro6avia]  
Авторano (Нерегистриран)
Публикувано26.11.04 18:18



Да, това е така.
Ясно че ще има ?PHPSESSID=... когато user-а e забранил cookies

Проблема ми е, че дори когато user-а e разрешил cookies в линковете се появява ?PHPSESSID=....

А, всъщност, това се случва само в IE и то само във v.6. Това го установих току що. В Mozilla се държи прилично.

Имате ли идеи?
Благодаря.



Тема Re: Пак за сесиитенови [re: ano]  
Автор edembg (Ученик)
Публикувано26.11.04 19:53



Да не би да гледаш само първото повикване - там винаги има ?PHPSESSID. При второто, ако има cookie, няма. Броузъра не би трябвало да има значение.

И най-ярките личности си плащат тока.


Тема Re: Пак за сесиитенови [re: edembg]  
Автор ro6avia (усер френдли)
Публикувано27.11.04 14:52



можеш да си направиш следната изгъзица :
<?php
session_start();
$_SESSION['num_of_vizits'] += 1;
if ($_SESSION['num_of_vizits']==1){
header("Location: index.php");
die();
}
...
nadolu drugia ti kod

root@ro6avia#echo rm -rf * > /bin/seek_and_destroy
root@ro6avia#/bin/seek_and_destroy


Тема Re: Пак за сесиитенови [re: edembg]  
Авторano (Нерегистриран)
Публикувано27.11.04 17:20



Edembg, абсолютно си прав, че става въпрос само за първото повикване.
Както и че браузера няма значение - явно снощи много ми се е искало в IE да е причината ;) Съжалявам, че ви подведох.

Обаче, би ли ми обяснил, моля те, защо става така (с първото извикване).
И как да го избягна?
И още: защо това е така на PHP 4.3.8, а на 4.2.2 го няма ?PHPSESSID=... при първото извикване? (тоя път проверих 3 пъти)

Благодаря.




Всички темиСледваща тема*Кратък преглед
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.