TomIRl: Baum der Erkenntniss II

Beitrag lesen

Moin Sven,

Naja, das Beispiel oben wird, weil $i niemals erhöht wird, auch endlos laufen. Da fehlt irgendwo noch ein $i++. Mindestens.

Naja die Syntax hab ich nicht überprüft, es ging ums Prinzip.

Das ist doch einfach nur unsauber programmiert, denn wenn ich die Variable mit  $_get[$i] "abhole hat diese doch trotzdem noch den

Schlecht ist eben sowas:

while ($i < 5)
{
  //hier irgendwas tun
  $i++
}

Wenn $i vorher niemals verwendet wurde, wird es mit 0 initialisiert, und die schleife läuft mit 0, 1, 2, 3 und 4.

Normalerweise verwendet man aber keine uninitialisierten Variablen. Da könnte sonstwas drinstehen, weil man vielleicht in irgendeiner Include-Datei geschlampt hat und $i schon mit 1325 initialisiert wurde.

Hab ich auch mal so gelernt.

Hat also mit register_globals erst einmal nichts zu tun!?

Doch. Das Problem mit register_globals sind immer...

Vielen Dank mein Knoten im Hirn ist wieder raus.

Das Problem wird _nicht_ durch die Verwendung von $_GET gelöst, sondern durch die Einstellung "register_globals=off". Das ist bei vielen Providern aber leider immer noch nicht der Fall, so dass man trotz Verwendung von $_GET zusätzlich noch darauf achten muß, dass man alle globalen Variablen initialisiert. Insofern führt die Verwendung von $_GET möglicherweise sogar zu größerem Leichtsinn, weil man sich irrtümlich sicher fühlt, obwohl die Sicherheit erst durch eine simple Servereinstellung hergestellt wird.

Ich denke, dss viele Provider die Umstellung fürchten, weil die Nutzer sämtliche Skripte umbauen müßten.

Die Frage sollte oben beantwortet sein. :)

PS: Den Rest Zitat unten drunter hättest du auch löschen können.

Hab ich auch schon bemerkt, hab mich schon gewundert warum er 25% angemeckert hatte, mir aber nichts bei gedacht, war nämlich unter der Bildschirmkante verschwunden.

Viele Grüße auc Berlin

TomIRL