Ich habe versucht, etwas einzurichten, das ein HTML-Formular überprüft, um sicherzustellen, dass die Textfelder mindestens 1 Zeichen eingegeben haben, bevor das Formular abgeschickt wird (zur nächsten Seite).PHP: Using isset, um ein Formular mit erforderlichem Textfeld zu validieren
Das HTML-Formular befindet sich auf einer Seite und fließt zu einer zweiten Seite. Die 2. Seite aktualisiert dann eine Textdatei. Das alles funktioniert so gut wie es ist, also möchte ich es nicht ändern. Aber was ich brauche, ist der Validator.
Ich habe zahlreiche Vorschläge durchsucht und gelesen, einige Vorschläge zur Verwendung von ISSET gesehen und das folgende Skript gemacht.
aber dies funktioniert nicht (weil das Formular immer gesendet wird/es gibt keine Fehlermeldungen). Ich habe zahlreiche andere Vorschläge gemixt (basierend auf anderen Tutorials, die ich gelesen habe). Aber es scheint, dass, egal ob die Textfelder leer sind oder nicht, das Formular immer noch einreichen wird. (es gibt einen Zeitstempel auf der nächsten Seite, so kann ich sagen, was gesendet wird.
Kann mir jemand sagen, ob Isset in diesem Fall funktioniert? Wenn ja, wo ich falsch liege. Oder wenn nicht, was ich kann Verwenden Sie, um einen Validator für die Textfelder zu bekommen.Ich würde lieber PHP dafür verwenden, aber wenn ich Javascript verwenden muss, ist eine Möglichkeit
(Hinzugefügt: Ich denke, das Problem ist, dass selbst wenn die unten $ Fehlermeldungen Es wird nie angezeigt, da die Seite automatisch über den Submit-Button umgeleitet wird.Was ich brauche, ähnlich wie bei einem Event-Handler - zB, wenn Button submit angeklickt wird, auf Fehler prüfen. Wenn es Fehler gibt, drucke sie nicht, Formular absenden.Dieser Code tut das nicht.)
Page 1 Code.
<?php
if (isset($_POST['submit'])) {
$error = '';
if (trim($_POST['topic']) == '') {
$error = "Please enter a topic<br>");
}
if (trim($_POST['outline']) == '') {
$error = "Please enter an outline<br>";
}
if ($error == '') {
Echo "There are no errors";
} else {
echo "$error";
}
}
?>
<form style="" method="post" action="addtopic2.php">
Topic:<input name="topic" id="topicbox" maxlength="100" type="text">
Outline: <textarea input wrap="nowrap" rows="10" cols="120" name="outline">
</textarea><br><input name="submit" value="Submit" type="submit">
</form>
Page 2 Code
<?php
$b = time();
$c = date("g:i:s A D, F jS Y",$b);
print "Topic and Outline Submitted at $c";
$t = "Topic:";
$o = "Outline:";
$d = "Time Date:";
$topic = $_POST['topic'];
$outline = $_POST['outline'];
$data = stripslashes("$t $topic | $o $outline | $d $c |\n");
$fh = fopen("users.txt", "a");
fwrite($fh, $data);
fclose($fh);
?>
möglich Duplikat [php Umleitung nicht funktioniert] (http://stackoverflow.com/questions/8438022/php-redirection- nicht funktioniert) –