php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2006

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 14.02.2006, 19:08  
Gast
 
Beiträge: n/a
Standard [Erledigt] Session wird auf Server nicht registriert

Hallo!
Ich habe auf meinem lokalen Server eine Website geschrieben. Hier habe ich register_globals on. Der Webserver von meinem Freund hat dies jedoch off. Nun habe ich es so gemacht, dass die Variablen registriert werden, die sessions funktionieren aber nicht. die Website:
www.pro2em.de
Die Sprache wird in einer Session übergeben. Wenn nun aber englisch beispielsweise ausgewählt wird, wird die Session nicht registriert und die Sprache wechselt sofort wieder auf deutsch. PHPinfo ist über www.pro2em.de/index.php?phpinfo=show_me zu erreichen.
Zum registrieren der Variablen und zum Nutzbar machen der Session-Vars habe ich folgenden Code vorläufig verwendet:

Code:
foreach($HTTP_POST_VARS as $key => $var) $$key = $var; // Opfer von REGISTER_GLOBALS: OFF
foreach($HTTP_GET_VARS as $key => $var) $$key = $var; // Opfer von REGISTER_GLOBALS: OFF
foreach($_SESSION as $key => $var) $$key = $var; // Opfer von REGISTER_GLOBALS: OFF
Wenn ich lokal register_globals: off mache, funktioniert nun alles. Nur auf dem Webserver nicht. Welche Einstellung blockiert hier die Sessions? Wo muss ich in der PHP.INI suchen?

Danke schonmal
Mfg
Speedy
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 14.02.2006, 19:25  
Erfahrener Benutzer
 
Registriert seit: 13.11.2005
Beiträge: 2.583
xabbuh
Standard Re: Session wird auf Server nicht registriert

Zitat:
Zitat von speedyware
Nur auf dem Webserver nicht.
Was passiert stattdessen? Was steht im Array $_SESSION?

Und warum programmierst du nicht so, dass du wenn benötigt direkt auf die Werte aus den Arrays $_POST, $_GET, $_SESSION etc. zugreifst? Wofür packst du das Ganze erst noch einmal in lokale Variablen?
xabbuh ist offline  
Alt 14.02.2006, 19:35  
Gast
 
Beiträge: n/a
Standard

Wie gesagt hab ich es lokal geschrieben und nicht damit gerechnet, dass der Server register_globals off hat. Deshalb hab ich erstmal provisorisch die Variablen manuell registiert. Das werd ich später auch noch ändern. Das Problem ist hierbei, dass ich keinen direkten Zugriff auf den Server hab und nicht alles mögliche testen kann. Ich muss erst die Dateien per mail schicken und er läd sie dann hoch. Steht in der PHP.INI vom server nix darüber? Bin da nicht so bewandert. hab nur gesehen, dass register_globals off ist und dass session aktiviert sind.
 
Alt 14.02.2006, 19:41  
Erfahrener Benutzer
 
Registriert seit: 13.11.2005
Beiträge: 2.583
xabbuh
Standard

Zitat:
Zitat von xabbuh
Was passiert stattdessen? Was steht im Array $_SESSION?
xabbuh ist offline  
Alt 14.02.2006, 21:07  
Gast
 
Beiträge: n/a
Standard

Ich denke mal, $_SESSION ist leer, weil er ja sonst die nötigen Variablen definieren würde. (?)
 
Alt 14.02.2006, 21:17  
Gast
 
Beiträge: n/a
Standard

foreach($HTTP_POST_VARS as $key => $var) $$key = $var; // Opfer von REGISTER_GLOBALS: OFF

Sorry, aber wenn ich sowas sehe, dann fällt mir nix mehr zu ein. Du hast immer noch nicht gehört, HTTP_*_VARS veraltet ist?

Und der Kommentar in der Zeile sollte er so lauten: Opfer der eigenen Dummheit. Das Problem mit register_globals ist schon 4 Jahre bekannt und du arbeitest immer noch mit on. Muss man nicht wirklich verstehen.

Gruß
phpfan
 
Alt 14.02.2006, 21:39  
Erfahrener Benutzer
 
Registriert seit: 13.11.2005
Beiträge: 2.583
xabbuh
Standard

Zitat:
Zitat von speedyware
Ich denke mal, $_SESSION ist leer, weil er ja sonst die nötigen Variablen definieren würde. (?)
Warum prüfst du das nicht?
xabbuh ist offline  
Alt 14.02.2006, 21:50  
Gast
 
Beiträge: n/a
Standard

Ich kann das nicht prüfen, weil ich keinen direkten Zugriff auf den Server hab und nicht alle paar minuten eine neue Version per mail schicken kann. Das ist ja eigentlich das Problem.
@phpfan:
Ist es bei dieser Angelegenheit nicht eigentlich vollkommen egal, ob ich nun $_POST oder $HTTP_POST_VARS verwende? Wenn es dich glücklich macht, kann ich die For-Schleife gerne für dich umschreiben.
 
Alt 14.02.2006, 22:04  
Erfahrener Benutzer
 
Registriert seit: 13.11.2005
Beiträge: 2.583
xabbuh
Standard

Zitat:
Zitat von speedyware
Ist es bei dieser Angelegenheit nicht eigentlich vollkommen egal, ob ich nun $_POST oder $HTTP_POST_VARS verwende?
Primär sind die $HTTP_*_VARS-Arrays noch nicht einmal das entscheidende Problem, auch wenn sie in PHP 5 bereits deaktiviert werden können und in PHP 6 wohl endgültig das Zeitliche segnen. Das wesentlich größere Manko an deinem Code ist, dass du die gesteigerte Sicherheit, die du durch die Deaktivierung von register_globals erlangst, durch deinen Quellcode wieder zunichte machst.
xabbuh ist offline  
Alt 14.02.2006, 22:06  
Gast
 
Beiträge: n/a
Standard

Ja, ich weiß. Darum geht es ja auch nicht, das ist ja nur provisorisch. Das einzige Problem ist nur, dass die Session nicht registriert wird.
PHPinfo hier: www.pro2em.de/index.php?phpinfo=show_me
Da muss irgendwo eine Einstellung sein, die das blockiert oder so ähnlich. Ich muss nur wissen welche und wie ich das Problem beheben kann.
 
 


Themen-Optionen
Thema bewerten
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.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Server durchsuchen mit php PHP Tipps 2008 7 18.08.2007 12:24
Server für shell_exec() / exec() vorbereiten Martek Server, Hosting und Workstations 2 16.03.2007 15:03
streaming von videos, server lahmt bereits nach einem abruf snowflow Server, Hosting und Workstations 6 30.11.2006 18:04
Session von einem Server an den anderen übergeben. axelnes PHP-Fortgeschrittene 3 18.09.2006 15:07
session nach seitenwechsel leer... GELight PHP Tipps 2006 8 17.09.2006 15:17
Frage zu Windows Server 2003 b++ Off-Topic Diskussionen 1 03.03.2006 09:41
[Erledigt] verschiedene Versionen auf einem W2K3 Server betreiben PHP Tipps 2006 2 13.01.2006 17:39
Session über 2 Server Stinger PHP-Fortgeschrittene 3 14.12.2005 20:49
[Erledigt] php session problem :( PHP Tipps 2005-2 5 21.10.2005 16:37
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
[Erledigt] Funktionssammlung auf externen Server auslagern PHP Tipps 2005 20 29.05.2005 14:04
Kreieren einer Session PHP Tipps 2005 11 28.05.2005 15:16
User werden nicht angezeigt/aufgelistet - Session Fehler? PHP Tipps 2005 13 25.05.2005 16:49
[Erledigt] Mit PHP Script auf einem Root Server per SSH einlogen PHP Tipps 2005 5 27.03.2005 19:24
[Erledigt] Formulardaten in einer Session speichern, per Link übergeben PHP Tipps 2004-2 2 29.12.2004 15:47

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
shell_exec blockiert session

Alle Zeitangaben in WEZ +2. Es ist jetzt 11:57 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.