Tom: globals auf "off" schalten

Beitrag lesen

Hello,

du startest einen Request und gibst Parameter mit, agen wir mal per GET.

Im Script hast Du z.B eine schlampig durchgeführte Sequenz, da PHP das ja ao erlaubt:

<?php   ### Globals sind an -> globals.php ###

$string .= "und noch ein Fehler";
echo $string;

?>

Das lad  nun mal auf Deinen Server und ruf das Script auf

.../globals.php

und mit

.../globals.php?string="Du blödes Arschloch, "

entschuldige den rüden Ton, er soll klarmachen, wie böse Menschen sein können.

Die internen Vars sind also von außen belegbar, obwohl das gar nicht so vorgesehen war. Wenn man alos die implizite Deklaration von PHP verwendet, dann kann man sich locker Fehler einfangen. Wenn dann auch noch magic_quotes_gpc ausgeschaltet ist, sind der Fernsteuerung Deines Scriptes eventuell Tür und Scheunentor geöffnet.

Mit irgendwelchen sicheren Variablen muss ein Script aber arbeiten. Da bleibt dann nur das Initialisieren vor der ersten Benutztung, so wie man das früher auch gemacht hat *gg*

Wenn jetzt Deine Variablen per default (Globals = off) nur noch in den Arrays landen, weiß man erstens, auf welchem Wege sie dem Script angetragen wurden und man hat eine höhere Sicherheit wegen der scripteigenen Variablen. Die gehören dann wirklich dem Script alleine. Initialisiern lass ich mich trotzdem nicht nehmen. Bin halt schon uHu.

Liebe Grüße aus http://www.braunschweig.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen