Jump to content
php.lv forumi

Recommended Posts

Posted

Kur varētu būt problēma ja reizēm sesija tiek saglabāta un reizēm nē? Respektīvi ir gadījumi kad sesija pēc ielogošanās noturas un neatslēdzas un ir kad nav iespējams ielogoties. Un arī teiksim pie katra mājaslapas refreša uz servera parādas jauns sesijas fails?

 

Pieļauju ka esmu nepareizi kaut ko izdarījis iekš php.ini... bet nav ne jausmas ko.

 

 

Varbūt ir kāda ideja?

Posted

Iespējams, ka Tev lapai ir vairāki domēni, un Tu izmanto session.cookie_domain ar vērtību tikai vienam domēnam.

 

(Man bija kaut kas līdzīgs arī tad, kad spēlējos ar no-cache headeriem. Var nejauši uztaisīt kombināciju, kad kūkiji uz viena vai otra browsera netiek saglabāti.)

Posted

Browseris kāds?

 

Bi gļuki ar kaukādu IE versiju, ja domēnā tika izmantots _, piemērams kruts_serveris.domeins.lv

 

Paskaties phpinfo(), vai tiešām session.cookie_domain nav norādīts. session.use_cookies nav off?

Posted

Ar IE un Mozilla ir viss kārtībā un sesijas kūkas arī atļautas... PAts jocīgākais ir tas ka reizēm tā sesija sanāk, es tik nespēju saprast kur slēpjas tas joks, ka sesija normāli izveidojas un noturas... bet lielākoties gan nestrādā.

 

Varbūt ir kāda īpatnība apachiem uz Ubuntu?

Posted (edited)
Ar IE un Mozilla ir viss kārtībā un sesijas kūkas arī atļautas...

 

Pag, kā tu zini, ka 100% kārtībā ? Bet visticamāk, ka tev tā sesijas resetojas līka koda dēļ. Ja tu piemēram, izveido vienkāršu failu:

 

<?php
session_start();
if (!isset($_SESSION['desa'])) {
 echo 'Nav, bet tūlīt būs...';
 $_SESSION['desa'] = 1;
} else {
 echo 'Sesija atjaunota...'
}
?>

 

Tad arī tādi paši gļuki ?

Edited by andrisp
Posted

Nestrādā tas kods...

 

Ar manu kodu visam jābūt kārtībā.. uz winXP viss griezās.. problēmas ar sesijām parādījās kad pārgāju uz Ubuntiem. Un manuprāt tur met kļūdu ka - "header alredy sent..." -šī kļūda tiek rādīta ja pirms session_start() tiek kaut kas izvadīts, bet manā gadījumā session_start() ir pati pirmā funkcija... visai murgaini....

Posted (edited)

Nekā... ieslēdzu buferi.. tāpar nestrādā... un paskatījos, ka "header alredy send..." nerāda...

 

session

Session Support enabled

Registered save handlers files user

Registered serializer handlers php php_binary wddx

 

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 public public

session.cookie_domain no value no value

session.cookie_httponly Off Off

session.cookie_lifetime 0 0

session.cookie_path /var/lib/php5/session /var/lib/php5/session

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 /var/lib/php5/session /var/lib/php5/session

session.serialize_handler php php

session.use_cookies On On

session.use_only_cookies Off Off

session.use_trans_sid 0 0

Edited by markss84
Posted

Oki.. problēma savā ziņā atrisinājās... Tagad tikai rodas jauns jautājums - Kāpēc dēl postfix nevarēja lietot sesijas... - kā atslēdzu postfixu viss strādā.....

Posted

wtf ir session.cookie_path /var/lib/php5/session /var/lib/php5/session ????

 

Šim būtu jābūt / pretēji neviens cookijs nestrādās faktiski.. ( http://lv.php.net/manual/en/function.setcookie.php izlasīt par 'path' )

 

Tāpat session.save_path /var/lib/php5/session /var/lib/php5/session nomainītu uz kaut ko jēdzīgāku aka '/tmp'

 

 

 

 

Postfixam nu nav pilnīgi nekāda sakara ar php sesijām!

Posted
Oki.. problēma savā ziņā atrisinājās... Tagad tikai rodas jauns jautājums - Kāpēc dēl postfix nevarēja lietot sesijas... - kā atslēdzu postfixu viss strādā.....

Problēma ir tavā kodā! Rakstīju savu Web uz Win strādāja ,pārgāju uz Ubuntu strādāja ,iemetu uz linux hosta ar strādā :)

 

Vienkārši visur kur tev vajag sesijas skriptam jāizskatās šādi!

<?php
session_start();
...
...

×
×
  • Create New...