Alternative zu GET?

Vertigo21

Erfahrenes Mitglied
Hallo zusammen.

Ich bin grade dabei ein Eingabeformular zu bauen. Dieses Formular enthält ein Bild, das in mehrere "Link-Bereiche" unterteilt ist. Klickt der User auf einen bestimmten Bereich, so soll sich das Formular wieder selbst aufrufen und den gewählten Punkt per GET in eine Liste eintragen. So weit so gut.

Nur ist bei mir "register_globals" auf OFF. Ich lese immer wieder, dass die die "globals", bzw. GET schlechter Programmierstil wären. Aber zum Beispiel für Anwendungen wie diese sind sie wohl unumgänglich oder?

Die einzige Alternative, die es ja so gibt wäre POST, aber um damit Daten zu übertragen muss ich ja ein "<form method=post>" erstellen, dass aber nur mit einem Submit-Button funktionieren würde- für meinen Fall also denkbar ungünstig.

Was ratet ihr mir?
 
register_globals=on unterstuetzt "schlechten" oder besser gesagt unflexiblen Code.
Dementsprechend sollte man immer mit $_GET, $_POST und den anderen superglobalen Array arbeiten. Es spricht also im Grunde nicht gegen GET, es laesst sich ja zum Teil auch garnicht vermeiden, alles was per URL kommt muss ja aus $_GET geholt werden. Formulare sollten aber im Grunde immer ueber POST verschickt werden. Ein Beispiel wo GET fuer ein Formular Sinn machen wuerde faellt mir beim besten Willen nicht ein.
 
Danke für deine Antwort. Dann muss ich mir also nicht schlechten Programmierstil nachsagen lassen. Dann bin ich ja beruhigt.

Dennis Wronka hat gesagt.:
Ein Beispiel wo GET fuer ein Formular Sinn machen wuerde faellt mir beim besten Willen nicht ein.

Naja, es ist eben gefordert, dass die Anwendung DAU-sicher ist. Und wie das in Firmen nun mal so ist, laufen da die Lexikondefinitionen eines DAUs rum. Statt also die Eingaben per Tastatur zu machen ("oh nein, wie schrecklich") soll man sich alles per Maus zusammenklicken können (ich weiß, ich weiß, aber ich habe die Aufgabe nicht formuliert...).
 
Andere Frage:

Ich habe bislang immer mit POST gearbeitet und daher bis vor etwa zwei Stunden keine Ahnung von GET. Nun, dabei handelt es sich ja nicht um ein soo komplexes Thema, aber trotzdem zickt mein Code:

seite1.html
HTML:
<br><br><a href="test.php?wert1=ABC&wert2=DEF"><img src="test1.GIF"></a>
 <a href="test.php?wert1=UVW&wert2=XYZ"><img src="test2.GIF"></a>

test.php
PHP:
$wert1 = $_GET['wert1'];
$wert2 = $_GET['wert2'];

echo "<br>".$wert1;
echo "<br>".$wert2;

Dieses denkbar einfache Beispiel liefert mir nur eine leere Seite, dank PHPinfo() weiß ich aber, dass die "globals" definitiv ON sind. Was mache ich falsch?

########## STOPP ##########
Problem gelöst. Mein XAMPP hatte sich im Hintergrund irgendwie aufgehängt. Daher die leere Seite.
 
Zuletzt bearbeitet:
Dennoch lohnt es sich immer zu prüfen, ob ein Wert übergeben wird.

if(isset($_GET[''])) { echo $_GET['']; } else { echo "nix da."; }
 
Dieses denkbar einfache Beispiel liefert mir nur eine leere Seite, dank PHPinfo() weiß ich aber, dass die "globals" definitiv ON sind. Was mache ich falsch?
Es wäre besser wenn du register_globals auf "Off" stellst.

Den Grund dafür findest du hier in diversen Threads.

greetz
daddz
 
Zurück