@ chinmoku:
error_reporting(0); bedeutet das keine PHP Fehlermeldungen ausgegeben werden wenn sich welche im Script ereignen.
Nur ist das nicht sonderlich nützlich wenn man als Tüftler an Scripts rumfummeln will, da man in Fehlerfällen absolut kein Feedback bekommt.
Wenn aber ein Script perfekt ist und nicht zu erwarten ist das sich da Fehler ereignen, kann man darauf zurückgreifen.
die Funktion muss AFAIK ganz oben in der Scriptseite stehen.

register_globals = Off bewirkt das Variablen die z.B. per URL an ein Script übergeben werden, nur über einen speziellen Bezeichner vom Script entgegen genommen werden können.
Ruft man z.B.
http://test.tld/script.php?variable=test
auf und register_globals ist aus, kann man auf die übergebene Variable nur über $_GET[variable] zurückgreifen. Andernfalls wäre auch $variable möglich.
So kann man Per Formular übergebene Variablen nur mit $_POST[variable] und per Cookie übertragene Variablen nur mit $_COOKIE[variable] entgegennehmen.

Die register_globals sind in den neueren PHP-Versionen standardmäßig aus. Sind sie es bei dir nicht und du möchtest dich dahingehend absichern, schreib in eine .htaccess-Datei:
php_flag register_globals off
Dadurch ist es Usern nicht länger möglich irgendwelchen Variablen, die nicht oder unzureichend im Script initialisiert und/oder definiert werden, über Post-, Get- oder Cookie-Methode eigene Werte zu geben.

Als PHP-Anfänger wäre es sehr gut, wenn du direkt mit deaktivierten register_globals arbeitest. Ich bin schon ein alter Knochen und hab zu lange mit aktivierten register_globals gearbeitet. Das Umlernen viel mir daher ziemlich schwer.