Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

Variablenübergabe in Formularen

Hallo!

Ich bin in Sachen PHP noch ziemlich neu in dem Gebiet. Ich probiere nun hier und da einige Sachen aus, wie jetzt gerade die Variablenübergabe aus Formularen. Nur blöderweise funktioniert es nicht so, wie es soll. Hab aus galileocomputing.de
Kann mir jemand sagen, warum das nicht funktioniert???

Also folgende Datei: (ud02.htm)

<html>
<body>
Bitte tragen Sie Ihre Adresse ein, und senden Sie das Formular ab:
<form action = "ud02.php" method = "post">
<input name = "nachname"> Nachname <p>
<input name = "vorname"> Vorname <p>
<input name = "strasse"> Straße <p>
<input name = "plz"> PLZ <p>
<input name = "ort"> Ort <p>
<input type = "submit">
<input type = "reset">
</form>
</body>
</html>


Die Datei, die mit dem Formular angesprochen wird(ud02.php)

<html>
<body>
<?php
echo "Vielen Dank, $vorname $nachname <br>";
echo "Wir haben Ihre Adresse<br>";
echo "$strasse <br>";
echo "$plz $ort <br>";
echo "gespeichert";
?>
</body>
</html>




Und folgende Fehlermeldungen:


Notice: Undefined variable: vorname in C:\Program Files\Apache Group\Apache2\htdocs\Rajesh\ud02.php on line 4

Notice: Undefined variable: nachname in C:\Program Files\Apache Group\Apache2\htdocs\Rajesh\ud02.php on line 4
Vielen Dank,
Wir haben Ihre Adresse

Notice: Undefined variable: strasse in C:\Program Files\Apache Group\Apache2\htdocs\Rajesh\ud02.php on line 6


Notice: Undefined variable: plz in C:\Program Files\Apache Group\Apache2\htdocs\Rajesh\ud02.php on line 7

Notice: Undefined variable: ort in C:\Program Files\Apache Group\Apache2\htdocs\Rajesh\ud02.php on line 7

gespeichert
-----------------------------------------------------------

Danke schonmal im voraus,
Gruss,
Rajesh

Hier gehts zum Orginal Eintrag "Variablenübergabe in Formularen" im Forum

Antworten

Das liegt an der PHP-Version. Bis Version 4.1.x kam man mit dem Namen an der Variablenwert, das geht aber ab Version 4.2.0 nicht mehr. Du hast zwei Möglichkeiten, entweder setzt Du die Variable register_globals in der php.ini auf on, oder Du schreibst Deine Scripte um. Auch wenn Methode 1 die einfachere Wahl ist, würde ich dies nicht machen. Wenn Dein Provider auf eine Version 4.2.x umstellt, ist nicht gewährleistet, daß auch register_globals auf on gesetzt wird. Und dann wird diese Variable bestimmt irgendwann ganz aus PHP verschwinden.

Jetzt möchtest Du bestimmt noch wissen, was Du an Deinen Scripts ändern mußt. Ganz einfach. Alle Variablen, die per POST weitergereicht werden, kannst Du mit $_POST["varname"] oder $HTTP_POST_VARS["varname"] ansprechen, bei GET mit $_GET["varname"] oder $HTTP_GET_VARS["varname"]. Das gilt auch für Cookies ($_COOKIE["varname"]) und für Sessionvariablen ($_SESSION["varname"]).

*** Nobody ***


2.

Danke vielmals für die Antwort.


Hier gehts zum Orginal Eintrag "Variablenübergabe in Formularen" im Forum
 
phpforum.de | Impressum | Handy Bundles