Portál AbcLinuxu, 25. dubna 2024 16:53


Dotaz: Nefunkcni sessions v php

4.12.2005 20:22 XRomec | skóre: 2
Nefunkcni sessions v php
Přečteno: 603×
Odpovědět | Admin
Ahoj mam takovy maly problem se session. Vždy když dám odkaz na jinou stránku tak se my vytvoři nová session. A promene sou pryc. Uvedu maly prikladek.
index.php
<?php
session_start();
session_register('this');
$HTTP_SESSION_VARS['this'] = 1;
header('location: next.php');
?>
next.php
<?php
session_start();
if ( session_is_registered('this') ) {
echo 'promena this existuje;
}
?>
A tohle je moje phpinfo() sekce session
session
Session Support 	enabled
Registered save handlers 	files user sqlite
Registered serializer handlers 	php php_binary

Directive	Local Value	Master Value
session.auto_start	Off	Off
session.bug_compat_42	On	On
session.bug_compat_warn	On	On
session.cache_expire	180	180
session.cache_limiter	nocache	nocache
session.cookie_domain	no value	no value
session.cookie_lifetime	0	0
session.cookie_path	/	/
session.cookie_secure	Off	Off
session.entropy_file	no value	no value
session.entropy_length	0	0
session.gc_divisor	100	100
session.gc_maxlifetime	1440	1440
session.gc_probability	1	1
session.hash_bits_per_character	4	4
session.hash_function	0	0
session.name	PHPSESSID	PHPSESSID
session.referer_check	no value	no value
session.save_handler	files	files
session.save_path	/tmp	/tmp
session.serialize_handler	php	php
session.use_cookies	Off	Off
session.use_only_cookies	Off	Off
session.use_trans_sid	1	1
No a problem je v tom, že se text nikdy nevypíše a stane se to,že se vytvoří jedna session s uloženou proměnou this a druhá session, která je prázdná. Problém bude zřejmě s konfigurací apache (nepoužívám [kukýs]). Fakt nevím v čem to vězí. Nevíte někdo?
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

4.12.2005 23:51 Martin Tůma | skóre: 39 | blog: RTFM | Praha
Rozbalit Rozbalit vše Re: Nefunkcni sessions v php
Odpovědět | | Sbalit | Link | Blokovat | Admin

Ne že bych do sessions nějak zvlášť viděl..., ale když nepoužíváš pro sessions cookies, tak při přesměrování pomocí header('location: ...') IMHO není jak na další stránku informace z aktuální session přenést. Parametry v GET či POST requestu se v tomto případě neprojeví.

Každý má právo na můj názor!
6.12.2005 12:58 XRomec | skóre: 2
Rozbalit Rozbalit vše Re: Nefunkcni sessions v php
Děkuju je to přesně jak říkáš. Zkusil jsem tam dat ještě ty parametry. jako get a jede to. Jenom mě trošku vadí že je vidět ten session id v adrese. Ale s tím se asi nedá nic dělat. Jelikož nevím jak bych to jinak (lépe mohl přesměrovat.) Ještě jednou moc dík.
5.12.2005 00:15 Ritchie | skóre: 27 | blog: Ritchie's | Berlin
Rozbalit Rozbalit vše Re: Nefunkcni sessions v php
Odpovědět | | Sbalit | Link | Blokovat | Admin
Při přesměrování (ve vašem případě nekorektní) HTTP hlavičkou se informace může přenést jako součást URI nebo pomocí cookie. Session cookies nemáte povoleny a do URI v hlavičce Location hodnotu PHPSESSID nepředáváte. Kudy se má tedy informace o session přenést?

BTW Pokuste se o korektní HTTP přesměrování, tedy se stavovým kódem a hlavně s absolutní URI v hlavičce Location.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.