WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 13.08.2007, 22:44   #1
wbendl
Master
 
Registriert seit: 22.03.2000
Alter: 66
Beiträge: 550


Standard Notwendige Änderungen nach register_globals=off

Hi!

Ich versuche einen Satz bestehender PHP-Scripte so zu verändern, daß sie auch mit register_globals=off funktionieren.

Den größten Teil habe ich geschafft, in dem ich $_GET verwende.

Übrig sind noch jene Fälle, wo Variable in mehreren Dateien verwendet werden, diese Dateien aber keine Möglichkeit der Variablenübergabe haben.

Meine Frage also:
Wie stelle ich diese Variable für andere Dateien zur Verfügung?
Oder wie kann ich Variable als global definieren?

Danke für eure Mühe!


mfg

WB
wbendl ist offline   Mit Zitat antworten
Alt 13.08.2007, 23:19   #2
void
Hero
 
Benutzerbild von void
 
Registriert seit: 26.07.2001
Ort: Wien
Beiträge: 811


Standard Re: Notwendige Änderungen nach register_globals=off

Zitat:
Original geschrieben von wbendl
Übrig sind noch jene Fälle, wo Variable in mehreren Dateien verwendet werden, diese Dateien aber keine Möglichkeit der Variablenübergabe haben.
wie genau? bei einem request durch include?

http://at2.php.net/manual/de/languag...s.scope.global?
____________________________________
nobody is perfect
void ist offline   Mit Zitat antworten
Alt 14.08.2007, 09:51   #3
wbendl
Master
 
Registriert seit: 22.03.2000
Alter: 66
Beiträge: 550


Standard

Hi!

Meine Kenntnisse in PHP sind leider nicht berauschend. Ich versuch es laienhaft zu erklären.

Diese Scripten bilden eine Art Sessionmanagement nach. Nach einem Login werden User und eine (von einem Script erzeugte) SessionID und die Zeit in einer DB abgelegt.
Die einzelnen Scripten prüfen bei jedem Aufruf, ob diese Session noch gültig ist. Anderfalls "fliegt man raus".

Mir register_globals=On standen User und SessionID für alle Scripten zur Verfügung. Da funktioniert natürlich alles.

Nach der Umstellung auf register_globals=Off habe ich begonnen, diese beiden Variablen (beginnend vom Login) mit $_POST/$_GET weiterzureichen. Das funktioniert fast überall.

Übrig geblieben ist ein Script, mit dem Konfigurationen geändert und gespeichert werden. Ich kriege nicht raus, wie diese Script überhaupt aufgerufen wird. Damit kann ich auch nichts übergeben.
In diesem Script sind die Variablen also leer, und ich flieg raus.

Die schnelle Lösung wäre also, diese Variablen global zu machen. Damit sollte es funktionieren.

Wenn das nicht möglich ist, werde ich es vielleicht mit session_start und $_SESSION versuchen. Keine Ahnung, ob das "korrekt" ist, aber es sollte funktionieren.


mfg

WB
wbendl ist offline   Mit Zitat antworten
Alt 14.08.2007, 13:49   #4
void
Hero
 
Benutzerbild von void
 
Registriert seit: 26.07.2001
Ort: Wien
Beiträge: 811


Standard

zu vorigen link kann ich noch http://at2.php.net/manual/de/ref.session.php hinzufügen, aber leider nicht weiterhelfen, da ich auch nicht hellsehen kann und die scripte nicht kenne - aber $_SESSION ist schon ein heißer tipp
____________________________________
nobody is perfect
void ist offline   Mit Zitat antworten
Alt 15.08.2007, 19:51   #5
wbendl
Master
 
Registriert seit: 22.03.2000
Alter: 66
Beiträge: 550


Standard

Hi!

Danke für die Antwort.

Ich habe mich entschlossen, alles selber neu zu schreiben.
Dabei lehne ich mich halt stark an die bestehende Funktionalität an. Weniger diplomatisch ausgedrückt: Ich kopiere einen Teil des vorhandenen Codes.


mfg

WB
wbendl ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 21:31 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag