Art Geschrieben 28. März 2003 Geschrieben 28. März 2003 hi, ich habe irgendwo gelesen, dass man globale variablen möglichst vermeiden sollte. warum? und wie funktioniert die alternative? Zitieren
sYnTaxx Geschrieben 28. März 2003 Geschrieben 28. März 2003 Originally posted by Art hi, ich habe irgendwo gelesen, dass man globale variablen möglichst vermeiden sollte. warum? und wie funktioniert die alternative? hm nun das ist ja eine interresante behauptung... ich weis nicht warum man globale variablen vermeiden sollte und die alternative ist sie eben nicht global zu verwenden sondern auf jeder page neu definieren. :floet: naja oder vielleicht meinst du mit alternative sessions? also irgendwie weis ich nicht genau was du willst... hier die suchanfrage für session: http://www.google.de/search?hl=de&ie=UTF-8&oe=UTF-8&q=session+php&meta=lr%3Dlang_de und hier zu session ein direktlink: http://www.dynamic-webpages.de/php/ref.session.php Zitieren
Spike Geschrieben 28. März 2003 Geschrieben 28. März 2003 Weil in neueren php-Versionen (ich glaub seit 4.2) register_globals standardmäßig aus Sicherheitsgründen auf OFF steht. Schau mal in dein lokales phpinfo(), ich wette da ist es On. http://www.php.net/manual/de/security.registerglobals.php Natürlich darfst du die weiterhin verwenden, nur musst du sie am Anfang jeder php Seite "abfangen". Zitieren
Crow T. Robot Geschrieben 28. März 2003 Geschrieben 28. März 2003 Im Prinzip soll man beim Programmieren immer auf globale Variablen verzichten, weil man damit saubere Schnittstellen unterwandert und ganz schnell für Datensalat sorgt. Das ist ähnlich wie mit "goto", wo man einen sauberen Programmfluss unmöglich macht und für "Spaghetticode" sorgt. Aber bei PHP ist der Begriff "global" für Variablen etwas anders definiert, darüber hinaus gibt es auch "superglobale" Variablen. Mehr dazu in Chapter 8. Variables. In Bezug auf $_GET[] und $_POST[] siehe auch in der dclp-FAQ: - 11.1. Wie unterscheide ich böse Variablen von guten? - 11.10. Vermeide globale Variablen Zitieren
Spike Geschrieben 30. April 2003 Geschrieben 30. April 2003 Ich stelle grade einige simple Scripte für register_globals = off um. Wie macht ihr das? Ist es praktisch alle Variablen, die das Script erwartet per $_GET oder $_POST am Anfang des Scriptes "aufzufangen"? Wenn ich z.b. meine Navigation über die URL lösen, z.B. index.php?content=kontakt fange ich die Variable $content so ab: $content = $_GET[content]; Was würde das Script machen wenn content aber nicht übergeben wird? Wird $content dann einfach nicht initialisiert? Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.