 |
| Hinweise |
Willkommen im TP-Hilfe-Forum!Dies ist ein Forum zu den Themen Photoshop, Dreamweaver, Flash, Selbständigkeit und mehr, in dem Du Hilfe, Anleitung oder eine Lösung zu Deinen Problemen erhältst. Aktuell bist Du in unseren Foren als Gast mit reinen Leserechten unterwegs. Wenn Du Dich registrierst, kannst Du eigene Themen verfassen, Deine Frage stellen und privat mit anderen TPlern kommunizieren. Weitere Foren werden zugänglich, und Du wirst – falls gewünscht – per Mail über neue Beiträge informiert. Die Registrierung ist schnell und kostenlos. Sollten bei der Registrierung Fragen auftauchen, reicht ein Klick in unsere Hilfe - Häufig gestellte Fragen oder eine kurze Mitteilung an das Support-Team. Viel Spaß bei Traum-Projekt.com |
02.08.2004, 00:25
|
#1
|
|
TP-Supporter
Registriert seit: Jul 2002
Ort: Frankfurt/M.
|
kein zugriff auf session-variablen bei deaktivierten cookies - weitergabe per URL ?
hallo alle zusammen,
vielleicht hab ich auch gerade ein brett vor dem kopf, aber ich schildere mal kurz mein problem:
ich benutze sessions auf einer seite.
in dieser session sind eine reihe von werten gespeichert.
identifiziert wird die session über die session-ID, und die wiederrum kann entweder automatisch an die URL angehängt werden (bei kompiliertem enable trans-sid) oder über einen gesetzten cookie mit der ID als inhalt weitergegeben werden.
so weit so gut.
ABER: wenn ich jetzt bei mir mit FF über die site surfe,
und die cookies deaktiviert habe, geht mal gar nix, d.h, ich kann nicht auf die session-variablen zugreifen.
logisch, es kann ja auch kein cookie mit der entsprechenden session-id gesetzt werden.
lösung: php soll mir bitteschön die blöde ID mit der URL weitergeben.
macht es aber nicht.
sowohl auf meiner lokalen testkiste als auch beim provider ist php mit der enable trans-sid option komliliert...?
kann ich meinem script oder dem server per htaccess vielleicht irgendwie sagen, das die session-id bitte immer per URL und nicht per cookie weitergegeben wird?
vielen dank für eure hilfe,
grüße,
daniel
|
|
|
02.08.2004, 00:52
|
#2
|
|
Guest
Registriert seit: Aug 2002
|
session.use_trans_sid muss 1 als Wert haben, wie sieht's bei dir aus? Was verstehst du denn unter kompiliert? Hast du Linux?
|
|
|
02.08.2004, 00:55
|
#3
|
|
TP-Supporter
Registriert seit: Jul 2002
Ort: Frankfurt/M.
|
hi,
ja, ich hab linux - sowohl hier zuhause in meiner "entwicklungsumgebung" als auch bei meinem provider.
ich kann zwar hier zuhaus praktisch schalten und walten wie ich will,
aber bei meinem provider hab ich halt nur einen shared server,
komme also weder an httpd.conf noch an php.ini ran.
oder kann ich das irgendwo in meinem script einstellen (...vermutlich eher nicht, oder...) ?
grüße,
daniel
|
|
|
02.08.2004, 01:12
|
#4
|
|
Guest
Registriert seit: Aug 2002
|
Testen oder im Manual schauen:
PHP-Code:
set_ini('session.use_trans_sid', '1');
|
|
|
02.08.2004, 01:14
|
#5
|
|
TP-Supporter
Registriert seit: Jul 2002
Ort: Frankfurt/M.
|
hi,
also ich habe mal auf meinem server hier zuhause in der php.ini den wert entsprechend geändert. funzt tadellos - die session-id's werden per url weitergegeben und alles klappt wunderbar.
bei meinem provider: fehlanzeige (ist bei 1&1 / puretec),
geht natürlich nicht !
was heißt das jetzt für mich?
ich meine es kann doch nicht sein, das sowas elementares wie sessions nicht zu verwenden sind?
letzen endes haben etwa 20% meiner besucher cookies "verboten" (lt. eigenem statistik-tool), und das ist natürlich viel zu viel um zu ignorieren (zumal da auch relativ elementare funktionen dranhängen)
den provider dazu zu bringen, den wert in der php.ini zu ändern, kann ich wohl vergessen, aber irgendwas muss da doch zu machen sein??
grüße,
daniel
|
|
|
02.08.2004, 01:17
|
#6
|
|
Guest
Registriert seit: Aug 2002
|
Siehe oben wegen ini ändern. Im Notfall steht dir aber die Session-ID immer zur Verfügung, daher wäre der letzte Ausweg die manuelle Anpassung.
|
|
|
02.08.2004, 01:17
|
#7
|
|
TP-Supporter
Registriert seit: Sep 2003
Ort: Wien, Österreich
|
[klugscheißmode mal wieder on  ]
Zitat:
|
Zitat von Strogij
Testen oder im Manual schauen:
PHP-Code:
set_ini('session.use_trans_sid', '1');
|
eigentlich isses aber
Zitat:
|
string ini_set ( string varname, string newvalue)
|
[/klugscheißmode]
__________________
Java != JavaScript
"He who makes a beast of himself gets rid of the pain of being a man."
Dr. Johnson
|
|
|
02.08.2004, 01:17
|
#8
|
|
TP-Supporter
Registriert seit: Jul 2002
Ort: Frankfurt/M.
|
hmm... da haben sich unsere beiträge wohl überschnitten, vermute ich ? ;-)
set_ini ist keine bekannte funktion lt. php.net?
hast du dich vertippt? oder verpeil ich da gerade was?
habe das einfach ganz am anfang in meinen code kopiert,
bekomme aber nur einen fehler:
Code:
Fatal error: Call to undefined function: set_ini()
grüße,
daniel
|
|
|
02.08.2004, 01:20
|
#9
|
|
Guest
Registriert seit: Aug 2002
|
Sorry, ini_set()!  .
@Father das war bei mir der Aufruf, nicht die Deklaration. 
|
|
|
02.08.2004, 01:23
|
#10
|
|
TP-Supporter
Registriert seit: Sep 2003
Ort: Wien, Österreich
|
jo eh 
aber ich war zu faul das zu schreiben also hab ich einfach die deklaration kopiert, da ich grade am coden bin und dabei immer das php-manual offen hab 
__________________
Java != JavaScript
"He who makes a beast of himself gets rid of the pain of being a man."
Dr. Johnson
|
|
|
02.08.2004, 01:23
|
#11
|
|
TP-Supporter
Registriert seit: Jul 2002
Ort: Frankfurt/M.
|
 , was ist denn hier los...
also bei
ini_set('session.use_trans_sid', '1');
bekomme ich zumindest keine fehler.
nur funktionieren tut es leider auch nicht, weder lokal noch bei meinem provider?
in der php.ini hab ich den wert jetzt wieder auf 0 gestellt,
und in meinem script mit o.g. funktion wieder auf 1 gestellt.
wenn ich es direkt in der php.ini mache, klappt es wunderbar...?
hab ich noch irgendwas vergessen?
grüße,
daniel
|
|
|
02.08.2004, 01:37
|
#12
|
|
TP-Supporter
Registriert seit: Sep 2003
Ort: Wien, Österreich
|
also im manual steht bei changeable bei session.use_trans_sid "PHP_INI_ALL" was soviel heißt dass es jederzeit überall geändert werden kann...
Zitat:
session.use_trans_sid "0" PHP_INI_ALL
PHP_INI_ALL Entry can be set anywhere
|
__________________
Java != JavaScript
"He who makes a beast of himself gets rid of the pain of being a man."
Dr. Johnson
|
|
|
02.08.2004, 01:41
|
#13
|
|
Guest
Registriert seit: Aug 2002
|
Es müsste dann aber vor session_start() stehen, denke ich.
|
|
|
02.08.2004, 01:54
|
#14
|
|
TP-Supporter
Registriert seit: Jul 2002
Ort: Frankfurt/M.
|
hi ,
also ich hab jetzt einfach mal gfolgendes gemacht:
PHP-Code:
if(ini_set('session.use_trans_sid', '1')) echo "WERT GESETZT"; else echo "FEHLER!";
und die rückgabe gibt tatsächlich einen fehler aus.
also scheint der aufruf nicht zu klappt (was auch erklärt, weshalb es nix bringt.. ;-) )
die zeile steht sehr früh in meinem script , eigentlich gleich nach der DB-Verbindung, noch weit vor session_start().
ehrlich gesagt, bin ich ein wenig ratlos...?
grüße,
daniel
|
|
|
02.08.2004, 01:58
|
#15
|
|
TP-Supporter
Registriert seit: Sep 2003
Ort: Wien, Österreich
|
du überprüfst die rückgabe auch auf true, ini_set() wird aber nie true liefern da es einen string bei erfolg liefert, nur false bei nem fehler - siehe manual.
__________________
Java != JavaScript
"He who makes a beast of himself gets rid of the pain of being a man."
Dr. Johnson
|
|
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
Thema durchsuchen |
|
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 08:22 Uhr.
|
 |