fränzel: formularfelder auf inhalt kontrollieren

hallöchen,

ich habe ein formular, das auf inhalt geprüft werden soll,
eigentlich war ich der meinung es schon hingekriegt zu haben,
allerdings will es nicht funktionieren ...
sieht jemand einen fehler?

code:
---

<?  if(isset($_REQUEST['name'])){   if(strlen($_REQUEST
['wunschfilm']) > 0 && strlen($_REQUEST['wunschfilm']) > 0){   }
else{  $error = "Fehler: Bitte min. Name, Wunschfilm und Datum (17.06.2003) eingeben.<br>";  }  }  ?>

<html>
<body
background="http://www.kinderfilm-berlin.de/grafiken/susi-tom-wunschf.jpg"
bgcolor="#ff9900" bgproperties="fixed" link="#990000" vlink="#990000" alink="#990000">
<div align="center"><img src="http://www.kinderfilm-berlin.de/grafiken/wunschfilm01.jpg">
<br><br><font color="#990000" size="2" face="verdana">
Hier könnt ihr den Film eintragen, den ihr unbedingt einmal sehen möchtet.<br>
Wir werden euren Filmwunsch dann in unserer Programmgestaltung mit berücksichtigen.</div>
<br>   <? echo $error; ?> <form method="post" action="tag_script.php">
<div align="center">Wunschfilm<br>
<input type="text" name="wunschfilm" size="55" <? if(isset($_REQUEST
['wunschfilm'])){  echo("value="".$_REQUEST['wunschfilm']."""); } ?>>
<br><br> Name
                                           
Datum <br>
<input type="text" name="name" size="25" <? if(isset($_REQUEST[name])){  echo("value="".$_REQUEST[name]."""); } ?>>
   
<input type="text" name="datum" size="25"><br><br>
E-Mail-Adresse <br> </font>  <input type="text" name="mail" size="55"></p>
<input type="submit" name="Button" value="Absenden"></div></form> </body>
</html>

  1. hi,
    so funzts:

    <?
    if(isset($_REQUEST['name']))
    {
     if(empty($_REQUEST['wunschfilm'])  ||  (empty($_REQUEST['name'])) ||  (empty($_REQUEST['datum']))) $error = "Daten fehlen";
    }
    echo $error;
    ?>
    <html>
    <body background="http://www.kinderfilm-berlin.de/grafiken/susi-tom-wunschf.jpg" bgcolor="#ff9900" bgproperties="fixed" link="#990000" vlink="#990000" alink="#990000">
    <form method="post" action="test18.php">
    <div align="center">Wunschfilm<br>
     <input type="text" name="wunschfilm" size="55" <? if(isset($_REQUEST['wunschfilm'])){  echo("value="".$_REQUEST['wunschfilm']."""); } ?>>
    <br><br> Name
                                               
    Datum <br>
    <input type="text" name="name" size="25" <? if(isset($_REQUEST[name])){  echo("value="".$_REQUEST[name]."""); } ?>>
       
    <input type="text" name="datum" size="25"><br><br>
    E-Mail-Adresse <br> </font>  <input type="text" name="mail" size="55"></p>
    <input type="submit" name="Button" value="Absenden"></div></form> </body>
    </html>

    mfg
    comunicout

    --
    fütter mein ego !
    welcome to electro-smog therapy
    1. hi,
      muss mich korrigieren..

      <?
      if(isset($_REQUEST['name']))

      muss zu  "if(isset($_REQUEST['button']))" werden

      mfg
      comunicout

      --
      fütter mein ego !
      welcome to electro-smog therapy
      1. Hallöchen nochmal,
        ersteinmal danke für die schnellen Antworten :)
        habe den Code eingefügt, allerdings werden immernoch leere Zeilen eigefügt ...
        es geht darum, dass manchmal leute einfach auf abschicken klicken und dann
        eine leere zeile da steht ... :(

        p.s.: sorry für den unstrukturierten code, sehe in diesen schmalen eingabefeldern
        immer nicht durch, wo ein umbruch ist, und wo der text nur dem feld angepaßt wird ... :(

        1. hi,
          dann wäre es doch angebracht die formularüberprüfung mittels JavaScript zu realisieren.
          dazu packst du in das form-tag ein onSubmit="return CheckForm()" und bastelst ein JS-
          Funktion (CheckForm), die überprüft, ob einzelne datenfelder gefüllt sind. sollten sie
          es nicht sein wird ein false wiedergegeben (return false;) und das formular nicht
          losgeschickt.... ?!!

          mfg
          comunicout

          --
          fütter mein ego !
          welcome to electro-smog therapy
          1. wenn ich mit javascript überprüfen will ob was eingetragen ist,
            einfach "*" ?

            function checkForm(form)
               {
                 if(form.wunschfilm.value=="")
                   {
                     alert("Bitte Wunschfilm eintragen.");
                     return false;
                   }
                   return true;
               }

            1. folgend ein simples bsp zur JS-formularüberprüfung

              <HTML>
              <HEAD><TITLE>test</TITLE>
              <script language="JavaScript">
              function CheckForm() {
               if(document.getElementById("name1").value =="") {
                alert("name1 fehlt");
                return false;
               }
               if(document.getElementById("name2").value =="") {
                alert("name2 fehlt");
                return false;
               }
               if(document.getElementById("name3").value =="") {
                alert("name3 fehlt");
                return false;
               }
              }
              </script>
              </HEAD>
              <BODY>
              <form action="testSieben.html" method="post" name="submit_form" onSubmit="return CheckForm()" >
               <input type=text name=name1 id=name1>
               <input type=text name=name2 id=name2>
               <input type=text name=name3 id=name3>
               <input type =submit name=submit value=submit>
              </form>
              </BODY></HTML>

              mfg
              comunicout

              --
              fütter mein ego !
              welcome to electro-smog therapy
              1. Vielen Dank! :))

  2. Hallo

    allerdings will es nicht funktionieren ...

    Was heißt das? Gibt es Fehlermeldungen (bei E_ALL), bekommst du den Quellcode angezeigt, stürzt der Server ab?

    sieht jemand einen fehler?

    Bei so "strukuriertem" Code ist das nicht so schnell möglich. Verwende Einrückungen usw.

    Zudem solltest du kein <font> mehr verwenden!

    Grüße
      David

    --
    >>Nobody will ever need more than 640k RAM!<<
    1981 Bill Gates
    1. hi,
      könntest du mir mal sagen weshalb man das <font>tag nicht
      mehr benutzen sollte ?

      mfg
      comunicout

      --
      fütter mein ego !
      welcome to electro-smog therapy
      1. Hallo

        könntest du mir mal sagen weshalb man das <font>tag nicht mehr benutzen sollte ?

        Weil es in Zukunft aus dem HTML-Standard fallen wird. Verwende anstelle dessen CSS. Lies hierzu die vielen Archiv-Threads

        Grüße
          David

        --
        >>Nobody will ever need more than 640k RAM!<<
        1981 Bill Gates