• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Apache2: Variable über URL übergeben funktioniert nicht

Direx

Newbie
Ich habe mein System neuinstalliert und jetzt habe ich ein Problem mit dem Apache (der von den SuSE CDs).
Ich übergebe in der URL die Variable "picid" mit:
http://192.168.2.11/bilder/index.php?picid=1
Dann fange ich die Variable in der Datei mit "if $picid == 1 { usw. }" ab. Vorher steht natürlich noch (if !isset($picid) {$picid == 1}).
Auf dem Webserver meines Providers klapp das auch alles, aber bei mir zu Hause klappt gar nichts. Es wird auch kein Fehler oder so ausgegeben. Die Seite wird geparst, aber der Eintrag "if $picid == 1 { usw. }" wird einfach ignoriert.

Woran kann das liegen?

mfg,
direx

[edit]
Ich habe wahrscheinlich irgendeine php4 Extension nicht installiert, aber ich weiss nicht, welche das ist...
 

beleg

Member
Eigentlich ganz einfach. Register Globals ist auf off gestellt. Kannst Du aber so lassen und benutzt einfach den superglobalen Array $_GET, in diesem Fall also $_GET[picid].
 

TeXpert

Guru
steht auch in jeder PHP-Anleitung drin (oder sollte drin stehen ;) )

und ja, lass register_globals bitte auf off...
 

nbkr

Guru
Und den Arrayindex bitte in Anführungszeichen: $_GET['varname'] und nicht $_GET[varname].
 

Dr. Glastonbury

Advanced Hacker
Du solltest eigentlichlich auch die "globals" aus Sicherheitsgründen deaktiviert lassen, weil so jemand über die URL eine Injection in dein Script machen kann. Das ist z.B. bei den Öffentlich zugänglichen Scripten (wie phpBB) besonders leicht, da hier die variablen-Namen bekannt sind ;)
 
Oben