Bei falscher(oder gar keiner) Angabe Fehlermeldung

hi ich hab mal diesen Code hier zusammen gebastelt:
Javascript:
<head>
</head>
<script type="text/Javascript">
<!-- 
function Formulartest() {
    if (window.document.Kontakt.Vorname.value=="") {
      alert("Bitte den Vornamen eingeben!");
      window.document.Kontakt.Vorname.focus();
      return false;
    }
    if (window.document.Kontakt.Name.value=="") {
    alert("Bitte den Nachnamen eingeben!");
    window.document.Kontakt.Name.focus();
    return false;
    }
    if (window.document.Kontakt.Mail.value=="") {
    alert("Bitte die Email Adresse angeben!");
    window.document.Kontakt.Mail.focus();
    return false;
    }
    if (window.document.Kontakt.Mail.value.indexOf("@")==-1) {
      alert("Bitte das @-Zeichen eingeben!");
      window.document.Kontakt.Mail.focus();
      return (false);
    }
    if (window.document.Kontakt.Mail.value.indexOf(".")==-1) {
      alert("Bitte den Punkt eingeben!");
      window.document.Kontakt.Mail.focus();
      return (false);
    }
    return true;
  }

//-->
</script>
Hier der HTML Code:
HTML:
<body background="textur.jpg">
<center>
<h1>Hallo das ist mein erstes Formular</h1>
Bitte f&uuml;llen Sie alle Felder aus
<form name="Kontakt" action="mailto:bla@bla.de" onsubmit="return Formulartest();">
    <table border="3" cellpadding="5" cellspacing="1" bgcolor="#ffffcc">
        <tr>
            <td width="100" align="center"><b>Vorname</b> </td>
            <td><input type="text" name="Vorname" size="40" maxlength="50">
            </td>
            
        </tr>
        <tr>
            <td align="center"><b>
            Name</b></td>
            <td><input type="text" name="Name" size="40" maxlength="50"></td>
        </tr>
        <tr>
            <td align="center"><b>Email</b></td>
            <td><input type="text" name="Mail" size="40" maxlength="50">
            </td>
        </tr>
        
        
        <tr>
            <td colspan="2"><textarea name="Nachricht" cols="44" rows="5"></textarea></td>
        </tr>
        <tr>
            <td colspan="2" align="right">
            <input name="reset" type=reset value="Eingaben L&ouml;schen">
            <input name="submit" type=submit value="Eingaben senden">
            </td>
        </tr>
    </table>
    </form>
    </center>
    </body>


Jetzt wollt ich fragen ob es geht, dass man wenn man eine Falsche eingaben macht dass dann statt alert nur entweder im Textfeld dann steht: falscher eingabe oder so,
oder das dann unter dem Formular diese Meldung steht
geht das mit JS oder nur mit PHP?


mfg
Browser-Zocker
 
Zuletzt bearbeitet von einem Moderator:
Sowas nenne ich ja mal "Formular des Grauens", wo der Benutzer bei versehentliche Abschicken erst mal 20 JS-Alerts wegklicken darf....prima :D
 
Javascript:
<head>
</head>
<script type="text/Javascript">
<!-- 
...
//-->
</script>
Wenn schon, denn schon...
HTML:
<head>

<!-- 1.) <script>-Bereich innerhalb von <head>...</head>  -->
<script type="text/javascript"><!-- 2.) Der MIME-Type wird durchgängig kleingeschrieben -->
<!-- 
...
//-->
</script>

</head>


mfg Maik
 
Zuletzt bearbeitet von einem Moderator:
Ich würde mal sagen, lass die HTML Kommentare in dem Script TAG ganz Weg,
erinnert mich immer an die wilden 90er :D

http://de.wikipedia.org/wiki/JavaScript#Versionsgeschichte

Die Kommentare hatten den Sinn das nicht Javascript Browser den Code nicht versehentlich ausgeben,
diese Browser sind aber schon vor Jahren zu 100% ausgestorben,
es seih denn du hast noch einen 486er mit Windows 3.11 :D
 
Mit JS Kasten "sanft" einblenden

hi kann man mit JS so ein Textfeld mit Text innen drin "sanft" einblenden? Also, jetzt nicht so dass erst nix ist und dann schwupp ises da sondern dass es sich so einblendet in ein paar Schritten

wollt fragen wie das geht


mfg
Browser-Zocker
 
danke, aber dass ist nicht das was ich bräuchte ich versuchs mal genauer zu erklären:

also ich hab hier ein Formular gemacht:
Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Feedback-Formular</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="phpkid.css">
</head>
<body>
<h3>Feedbackformular</h3>
<form action="b.php" method="post">
Name: <input type="text" name="Name" value="<?php 
if (isset($_POST['Name'])) {
  echo htmlspecialchars(stripslashes($_POST['Name']));
}
?>"><br>
E-Mail-Adresse: <input type="text" name="Email" value="<?php 
if (isset($_POST['Email'])) {
  echo htmlspecialchars(stripslashes($_POST['Email']));
}
?>"><br>
Kommentar: <br>
<textarea name="botschaft" cols="50" rows="5">
<?php
if (isset($_POST['botschaft'])) {
  echo stripslashes($_POST['botschaft']); 
}
?> 
</textarea><br>
<input type="submit" value="Absenden" name="submit">
</form>
<?php
if (isset($_POST['submit'])) {

  $fehler = false;
  $fehlertext = "";

  if (empty($_POST['Name'])) {
    $fehler = true;
    $fehlertext .= "Der Name fehlt<br>";
  } elseif (strlen($_POST['Name']) < 3) {
    $fehler = true;
    $fehlertext .= "Der Name ist zu kurz<br>\n";
  }
  $muster = "/^[a-zA-Z0-9-_.]+@[a-zA-Z0-9-_.]+\.[a-zA-Z]{2,4}$/";
  if (empty($_POST['Email'])) {
    $fehler = true;
    $fehlertext .= "Die E-Mail-Adresse fehlt!<br>\n";
  } elseif (preg_match($muster, $_POST['Email']) == 0) {
    $fehler = true;
    $fehlertext .= "Die E-Mail-Adresse ist ungültig!<br>\n";
  }
  if (empty($_POST['botschaft'])) {
    $fehler = true;
    $fehlertext .= "Das Kommentar-Feld muss ausgefüllt werden!<br>\n";
  } elseif (strlen($_POST['botschaft']) < 3) {
    $fehler = true;
    $fehlertext .= "Der Kommentar ist zu kurz<br>\n";
  }

  if ($fehler) {
    echo "<p>$fehlertext</p>";
  } else {
    $mailbody = $_POST['Name'] . " schrieb\n\n";
    $mailbody .= $_POST['botschaft'];
    $mailbody = stripslashes($mailbody);
    $Email = $_POST['Email'];
    if (@mail("test@web.de", "Feedback", $mailbody, "From: $Email")) {
      echo "<p>Danke! Die Botschaft wurde weitergeleitet!</p>\n";
    } else {
      echo "<p>Leider gab es einen Sendefehler!</p>\n";
    } 
  }
}
?>
</body>
</html>
jetzt wollt ich halt dass die Fehlermeldung unter dem Eingabe feld erscheint mit Text innen drin (also es erscheitn einfach ein z.B. rotes Feld mit text aber nicht das der mit nem Link oder so geöffnet wird)
es ürde auch reichen dass einfach ein Feld mit ext ohne Effekte kommt (aber halt unter dem Feld bei mir schaff ich es immer nur dass es ganz unter dem Formular erscheint)

thx schon mal


mfg
Browser-Zocker
 

Neue Beiträge

Zurück