[php]ini_set ongelijk aan ini_get_all

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • grolle
  • Registratie: Oktober 2001
  • Laatst online: 15-09 10:26
Goed beste tweakers

Een gastenboek wordt in een iframe getoon op een ander domijn. (dus pagina domijn 1, gasten boek domijn 2)
In het gastenboek wordt maakt ik gebruik van sessies. Alleen de (standaard)privicy instellingen van IE (6 en andere) laten dat sessie cookie niet toe :(

Probleem makkelijk op te lossen door met index.php?PHPSESID=blaat te gaan werken, niemand die het ziet want het is toch iframe en er wordt nauwelijks iets in de sessie opgeslagen dat mij zorgen maakt (vind ik dan)

ff ini_set ('session.use_cookies', "0"); voor de session_start() en opgelost... Niet dus |:(

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
//In wat voor volgorde dan ook en in alle mogelijke variaties 
//Bijvoorbeeld zo 
ini_set ('session.use_only_cookies', "off");  
ini_set ('session.use_cookies', "FALSE");  
ini_set("session.use_trans_sid", "1"); 
 
 
//Laat maar eens zien 
echo '<PRE>'; 
$toon = ini_get_all(); 
print_r($toon); 
echo '</pre>';


De uitkomst blijft
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
    [session.use_cookies] => Array 
        ( 
            [global_value] => 1 
            [local_value] => 1 
            [access] => 7 
        ) 
 
    [session.use_only_cookies] => Array 
        ( 
            [global_value] => 0 
            [local_value] => 0 
            [access] => 7 
        ) 
 
    [session.use_trans_sid] => Array 
        ( 
            [global_value] =>  
            [local_value] =>  
            [access] => 6 
        )


Dat is niet wat ik gedacht had ;(

Goed dan ga je zoeken op het GOT
Dan vind je onderandere deze post [rml]RM-rf in "[ php] Sessie ID wordt niet doorgegeven v..."[/rml]

Die stelt voor om in
in .htaccess moet je
code:
1
php_flag session.use_trans_sid on
aangeven en in de code zelf:
code:
1
ini_set('session.use_trans_sid', true);


Maar als ik dat doe dan krijg ik een errorpage 500
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, cfWEBADMIN and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.
Nooit gedacht dat iets zo simpel zo moeilijk kon worden...
Heeft iemand nog een sugestie om me uit dit probleempje te helpen??

Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Sessies zijn serverafhankelijk dus die kun je niet zomaar doorgeven geloof ik. En ini_set() stelt gedurende de loop van het script wat in, maar het verandert meen ik niet de PHP.ini file. Dus als je daar met ini_get_all() alles uit haalt, dan is het gewoon datgene wat je standaard hebt ingesteld. Ik denk dat je een GET variabele moet doorgeven aan de server, die op basis daarvan een nieuwe sessie kan aanmaken, dus dan heb je zeg maar 2 sessies tegelijk lopen voor je site.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

  • grolle
  • Registratie: Oktober 2001
  • Laatst online: 15-09 10:26
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php 

$setting = ini_get('session.use_cookies');

print "Current setting of session.use_cookies is $setting<br>";

$check = ini_set('session.use_cookies','0'); // i have  tried putting 0,'0', off,'off' but all to no avail.

if(! $check)
{
    print "Can not change setting.<br>";
    
}

$new_setting = ini_get('session.use_cookies');

print "New setting of session.use_cookies is $new_setting<br>";

?>


Dat komt bij mij telkens uit om:
Current setting of 'session.use_cookies is 1
Can not change setting.
New setting of session.use_cookies is 1

Ik zal dus bij mijn host waarschijnlijk dus geen toestemming hebben voor ini_set() :(

Het zelfde geld denk ik voor php_flag in .htaccess
code:
1
php_value session.use_cookies 0

zelfs een htaccess file met enkel deze regel komt op een error 500

Volgens mij kan ik dan nog 3 dingen doen
1 de server admin een mailtje doen
2 alle linkjes "handmatig" een sesie id mee geven
3 Aan NMe84 vragen wat hij precies bedoelt?

Begrijp ik dat je (NMe84) op server 1 een sessie wilt starten die je op server 2 wilt over nemen of zo? Ik vraag maar ... (??)

Ah een 4 ding. Iemand anders nog een sugestie?

Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Ik bedoelde dat je zelf een of ander id/hash/wat dan ook van de ene server doorpasst naar de andere.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.