Tom: aktellen link oder URL auslesen

Beitrag lesen

Hello,

Und was wäre wenn ich folgendes machen würde wenn rigsters_globals auf on oder off stände?

$ag = $_GET['ag'];

Wenn ich eine Bedingung Abfrage darf ich dann nur noch folgendes schreiben?

If ($_GET['ag'] == 0 )
 { ... }

Kann ich denn auch $_GET['ag'] einen neuen Wert zuweisen? So wie ich es nun mit $ag = 5; machen würde?

Ich kann das nun nicht wirklich überprüfen da ich irstmal herausfinden muß wie die php.ini auf meiner Linux Kiste ist...

Wie sie eingestellt ist, oder wo sie liegt? Das WO findest Du z.B. mit

find -name "php.ini"

Und die Einstellungen bekommst Du auch mit der PHP-Funktion

<?php
phpinfo();
?>

angezeigt.

Du darfst mit den globalen Variablen alles machen, was Du mit selbst definierten Variablen auch machen darfst. Diese Arrays sind allerdings "superglobal". Das bedeutet, dass sie nach der Definition durch das System im gesamten Script erreichbar sind. Deshalb sind sie auch schon von Anfang an vorhanden. $_SESSION ist nach dem Aufruf von session_start() vorhanden.

Welche Variablen gerade vorhanden sind, erfährst Du mit

$_vars = get_defined_vars()
echo "<pre>";
print_r($_vars);
echo "</pre>";

Die Vorteile der globalen Arrays sind:

  • Man kann sie von Außen nicht "faken", sie werden vom System immer angelegt
  • Das $_GET-Array enthält immer die Paramter aus der URi
  • Das $_POST-Array enthält immer die Paramter aus dem Formular (Post)
  • Das $_COOKIE-Array enthält immer die vom Client mitgesandten Cookies
    ...

Lies Dir mal http://de.php.net/manual/de/language.variables.predefined.php durch.

Den Thread habe ich auch wiedergefunden:
http://forum.de.selfhtml.org/archiv/2004/1/70213/#m404111

Wenn man gleichzeitig Paramter über $_GET, $_POST und $_COOKIE überträgt, dann landen die bei register_globals = on in denselben Variablen im Script, wenn sie gleichnamig sind. Ein Faker kann dann auch dafür sorgen, dass Post oder Cookie-Variablen einfach überschrieben werden. Allerdings ist die Reihenfolge meistens EGPC. siehe phpinfo() unter "variables_order: EGPCS"
und http://de.php.net/manual/de/configuration.directives.php

Viel Erfolg

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

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen