Oh man, das Wetter hinterlässt echt seine Spuren.
*peinlich*
Ähm, ja, ... danke. lg
Oh man, das Wetter hinterlässt echt seine Spuren.
*peinlich*
Ähm, ja, ... danke. lg
hallo und danke für die antwort,
so würde es gehen, aber dann werden auch die ausgefüllten felder wieder angezeigt, wenn auch mit inhalt. das wollte ich umgehen, die ausgefüllten sollten also gar nicht mehr angezeigt werden.
hast du auch eine idee warum das ?next=1 an die url angehangen wird, obwohl post?
ich hab momentan noch nicht raus gefunden wie sich das mit einem screenreader machen lässt. sobald ich es raus gefunden habe werde ich den code auch wie vorgesehen posten.
danke und mfg
Guten Tag,
trotz meines nicht so guten Einstands hier im Forum hoffe ich dass mir geholfen wird/werden kann.
Bei einem selbst geschriebenen Formular treten 2 Fehler auf:
1. vn und nn sind einzutragen. Angenommen nn wird nicht eingetragen wird darauf hingewiesen dass es noch fehlt und das Eingabefeld für nn ist vorhanden. Wenn ich nun aber nn eingetragen habe und auf absenden geh ist nun plötzlich vn nicht mehr vorhanden, obwohl dies ganz zum Anfang eingetragen wurde. Also verschwindet immer der vorletzte Eintrag.
2. Befehle die mit POST gesendet werden erscheinen in der Adressleiste (was, sofern ich richtig gelesen habe nur bei GET der Fall sein sollte):
http://localhost/lernen/eintrag.php?next=1
Wär für Hilfe dankbar.
mfg
Und hier das gekürzte Zusammengeschriebene (sts = status = 1 wenn schon mal abgesendet):
<?php
if ($_GET['next'] == 1) {
echo 'Die Daten wurden übernommen. Vielen Dank!';
exit;
}
if ($_POST['sts'] == 0 OR $_POST['vn'] == "" OR $_POST['nn'] == "") {
echo '<form action="eintrag.php" method="post">';
if ($_POST['vn'] != "") {
echo 'Vorname: '. $_POST['vn'];
} else {
if ($_POST['sts'] == 1) {
echo "<br />Bitte den Vornamen eintragen<br />";
}
echo 'Vorname:';
echo '<input type="text" name="vn" />';
}
if ($_POST['nn'] != "") {
echo 'Nachname: '. $_POST['nn'];
} else {
if ($_POST['sts'] == 1) {
echo "<br />Bitte den Nachnamen eintragen<br />";
}
echo 'Nachname:';
echo '<input type="text" name="nn" />';
}
echo '<input type="hidden" name="sts" value="1" />';
echo '<input type="submit" value="absenden" />';
echo '</form>';
exit;
} else {
$vn = $_POST['vn'];
$nn = $_POST['nn'];
echo '<p>Alle Daten korrekt?</p>';
echo 'Voorname: '. $vn;
echo '<br />Nachname: '. $nn;
echo '<form action="eintrag.php?next=1" method="post">';
echo '<input type="submit" value="absenden" />';
echo '</form>';
}
?>
Alles anzeigen
Sry, hasse eben Übertreibungen. Und Diese in Kombination mit der Hitze hat mich eben etwas zu einer übertriebenen Reaktion verleiten lassen.
Ein ernst gemeintes: entschuldigung.
mfg
ps.: der link
http://www.php-kurs.com/notice-undefined-index-meldung.htm
war übrigens sehr hilfreich.
Sicher dass du dich da nicht um 1-2 Beiträge verzählt hast? -.-
Ich schrieb im Betreff auch NOTICE nicht ERROR.
Und selbst notice ist ein Hinweis dass etwas nicht zu 100% so ist wie es sein sollte/könnte.
Deshalb war meine simple Frage weshalb es bei php-kurs nicht vollständig mit z.B. oben genanntem Beispiel beschrieben ist.
Jedenfalls danke an die VERNÜNFTIGEN Antworten (2-3).
Guten Abend,
gleich das erste beispiel auf der homepage
http://www.php-kurs.com/formularauswertung-mit-php.htm
<?php
echo "eingetragener Vorname: ". $_GET['vorname'];
?>
<form action="testusstart.php" method="get" >
<p>Ihr Vorname:
<input type="text" name="vorname" />
</p>
<p>
<input type="submit" value="absenden" />
</p>
</form>
bringt bei mir folgende meldung:
Notice: Undefined index: vorname in C:\xampp\htdocs\testusstart.php on line 2
ist für mich als anfänger im grunde auch logisch, da als aller erstes eben die zeile
echo "eingetragener Vorname: ". $_GET['vorname'];
ausgelesen wird, aber $_GET eben noch kein inhalt hat.
meine frage: warum ist das beispiel so verzeichnet wenn es doch nicht fehlerfrei funktioniert? mfg
HTML-Seminar.de - mit Videos zum schnellen Lernen, wie man eine Website selbst erstellt.