+ Antworten
Ergebnis 1 bis 4 von 4

Thema: Checkbox als Pflichtfeld.

  1. #1
    TP-Newbie xenway macht alles soweit korrekt
    Registriert seit
    Jul 2007
    Beiträge
    2

    Checkbox als Pflichtfeld.

    Guten Morgen,
    Ich bräuchte mal eure Hilfe. Ich hab hier ein Formular und möchte die Checkbox auch als Pflichtfeld haben,also es muss angeklickt sein um das Formular abzusenden.


    Formular >>
    HTML-Code:
    <script type="text/javascript">
    function check()
    {
      var checked=true;
      var pattern=/.*\@.*\..*/;
                                                  if (checked)
    	  {
    	    if (document.sendform.vname.value=="")
            {
    		  document.sendform.vname.focus();
    		  document.sendform.vname.select();
              alert ("Bitte füllen Sie alle Pflichtfelder aus.");
              checked=false;
            }
    	  }
                        if (checked)
    	  {
    	    if (document.sendform.nname.value=="")
            {
    		  document.sendform.nname.focus();
    		  document.sendform.nname.select();
              alert ("Bitte füllen Sie alle Pflichtfelder aus.");
              checked=false;
            }
    	  }
                    if (checked)
    	  {
    	    if ((pattern.test(document.sendform.email.value))==false)
            {
    		  document.sendform.email.focus();
    		  document.sendform.email.select();
              alert ("Bitte geben Sie eine gültige E-Mail-Adresse ein.");
              checked=false;
            }
    	  }
                  if (checked)
    	  {
    	    if (document.sendform.email.value=="")
            {
    		  document.sendform.email.focus();
    		  document.sendform.email.select();
              alert ("Bitte füllen Sie alle Pflichtfelder aus.");
              checked=false;
            }
    	  }
                        if (checked)
    	  {
    	    if (document.sendform.straenr.value=="")
            {
    		  document.sendform.straenr.focus();
    		  document.sendform.straenr.select();
              alert ("Bitte füllen Sie alle Pflichtfelder aus.");
              checked=false;
            }
    	  }
                        if (checked)
    	  {
    	    if (document.sendform.ortplz.value=="")
            {
    		  document.sendform.ortplz.focus();
    		  document.sendform.ortplz.select();
              alert ("Bitte füllen Sie alle Pflichtfelder aus.");
              checked=false;
            }
    	  }
                      if (checked)
      {
        document.sendform.method="POST";
        document.sendform.action="./form.php";
    	document.sendform.submit;
      }
      return checked;
    } 
    </script>
    
    <form class="formular" name="sendform" onsubmit="return check()" enctype="application/x-www-form-urlencoded">
    
    <input type="hidden" name="fgwemail" value="info@test.de">
      
    <input type="hidden" name="fgwsubject" value="Formular">
      
    <input type="hidden" name="fgwreturnurl" value="./danke.html">
      
      <div class="formcaption">
          <strong>Vorname</strong>
        </div>
      <input class="box" size="30" type="text" name="vname" value=""><br />
      
      <div class="formcaption">
          <strong>Nachname</strong>
        </div>
      <input class="box" size="30" type="text" name="nname" value=""><br />
      
      <div class="formcaption">
          <strong>E-Mail</strong>
        </div>
      <input class="box" size="30" type="text" name="email" value=""><br />
      
      <div class="formcaption">
          <strong>Stra&szlig;e / Nr.</strong>
        </div>
      <input class="box" size="30" type="text" name="straenr" value=""><br />
      
      <div class="formcaption">
          <strong>Ort / PLZ</strong>
        </div>
      <input class="box" size="30" type="text" name="ortplz" value=""><br />
      
    	<div class="formcaption">&nbsp;</div>
    	<p><input type="checkbox" name="jaichmoechteeinnewslettererhalten" value="ja" >&nbsp;<span class="buttoncaption">Ja , ich m&ouml;chte ein Newsletter erhalten</span></p>
      
    <div class="formcaption">&nbsp;</div>
    <input type="image" border="0" src="./images/w2dsbmt.gif" usemap="0"><br />
    
    </form>
    form.php >>
    PHP-Code:
    <?php

    function postvars($key) {

        
    // Liefert die POST-Variablen unabhängig von den Magic Quotes

        
    if (isset($_POST[$key])) {
            if (
    get_magic_quotes_gpc()) {
                return (
    stripslashes($_POST[$key]));
            } else {
                return (
    $_POST[$key]);
            }
        }
        else {
            return (
    "");
        }
    }

    function 
    quoted_printable_encode($input) {

        
    // MIME-Encoding

        
    $line_max 76;
        
    $hex = array('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F');
        
    $lines split("\n"$input);
        
    $eol "\n";
        
    $escape "=";
        
    $output "";

        for (
    $j=0;$j<count($lines);$j++) {
            
    $line $lines[$j];
            
    $linlen strlen($line);
            
    $newline "";
            for(
    $i 0$i $linlen$i++) {
                
    $c substr($line$i1);
                
    $dec ord($c);
                if ( (
    $dec == 32) && ($i == ($linlen 1)) ) { 
                    
    $c "=20"
                } elseif ( (
    $dec == 61) || ($dec==46) || ($dec 32 ) || ($dec 126) ) { 
                    
    $h2 floor($dec/16); $h1 floor($dec%16); 
                    
    $c $escape.$hex["$h2"].$hex["$h1"]; 
                }
                if ( (
    strlen($newline) + strlen($c)) >= $line_max ) { 
                    
    $output .= $newline.$escape.$eol
                    
    $newline "";
                }
                
    $newline .= $c;
            } 
            
    $output .= $newline;
            if (
    $j<count($lines)-1$output .= $eol;
        }
        return 
    trim($output);
    }

    function 
    createHTMLMail() {

        
    // erzeugt eine HTML-Mail

        
    global $HTTP_POST_VARS;
        
    reset($HTTP_POST_VARS);
        
        
    $i=1;
        
        
    $mymail="";
        
        
    // Header
        
        
    $mymail.= "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">\n";
        
    $mymail.= "<html>\n";
        
    $mymail.= "<head>\n";
        
        
    $mymail.="<META http-equiv=Content-Type content=text/html; charset=iso-8859-1>\n";
        
        
    $mymail.= "</head>\n";
        
    $mymail.= "<body bgcolor=\"#ffffff\" text=\"#333333\" link=\"#333333\">\n";

        
    $mymail.= "<style>\n";
        
    $mymail.= "  td {font-family : Tahoma, Verdana, Geneva, Arial, Helvetica, sans-serif; font-size : 11px; color : #333333; }\n";
        
    $mymail.= "</style>\n";
        
    $mymail.="<table width=100% border=0 cellpadding=4>\n";

        
    $mymail.="<tr>";
        
    $mymail.="<td colspan=2><strong>Folgende Mitteilung wurde an Sie gesandt:</strong></td>\n";
        
    $mymail.="</tr>\n";
        
        while (list(
    $key$val) = each ($HTTP_POST_VARS))
        {
            switch (
    $key)
            {
                case 
    "x":
                case 
    "y":
                case 
    "fgwemail":
                case 
    "fgwsubject":
                case 
    "fgwreturnurl":
                    break;
                   default:
                    
    $mymail.="<tr>";
                    
    $mymail.="<td><strong>".$key.":</strong></td>\n";
                    
    $mymail.="<td width=100%>".$val."</td>\n";
                    
    $mymail.="</tr>\n";
            }
        }

        
    $mymail.="</table>\n";

        return 
    $mymail;
    }

    function 
    createTextMail() {

        global 
    $HTTP_POST_VARS;
        
    reset($HTTP_POST_VARS);

        
    $mymail="";
        while (list(
    $key$val) = each ($HTTP_POST_VARS))
        {
            switch (
    $key)
            {
                case 
    "x":
                case 
    "y":
                case 
    "fgwemail":
                case 
    "fgwsubject":
                case 
    "fgwreturnurl":
                    break;
                   default:
                    
    $mymail.=$key." ";
                    
    $mymail.=$val."\n";
            }
        }
        
        
    $mymail.="\n";

        return 
    $mymail;
    }
        
    function 
    createMimeMail() {
        
    $mymime="This is a multi-part message in MIME format.\n\n";
        
    $mymime.="----:>\n";
        
    $mymime.="Content-Type: text/plain;\n\tcharset=\"iso-8859-1\"\n";
        
    $mymime.="Content-Transfer-Encoding: quoted-printable\n\n";
        
    $mymime.=quoted_printable_encode(createTextMail())."\n";
        
    $mymime.="----WEB2DATEGATEWAY\n";
        
    $mymime.="Content-Type: text/html;\n\tcharset=\"iso-8859-1\"\n";
        
    $mymime.="Content-Transfer-Encoding: quoted-printable\n\n";
        
    $mymime.=quoted_printable_encode(createHTMLMail())."\n";
        
    $mymime.="----:)--\n";
        return 
    $mymime;
    }

    function 
    deSlash(&$element) {

        
    // Für Stripslash

        
    $element=stripslashes($element);
    }

    // Hauptprogramm

    $fgwemail=postVars("fgwemail");
    $fgwsubject=postVars("fgwsubject");
    $fgwreturnurl=postVars("fgwreturnurl");

    if (
    $fgwemail!='nomail@kaufrausch.de') {

        if (!
    $fgwemail) {
            die (
    "ERROR: NO RETURN-EMAIL-ADRESS");
        }
        if (!
    $fgwreturnurl) {
            die (
    "ERROR: NO RETURN-URL");
        }

        
    mail ($fgwemail$fgwsubjectcreateMimeMail(), "MIME-Version: 1.0\nContent-Type);    
    }
    header("
    Location".$fgwreturnurl);


    ?>
    Bedanke mich schonmal im voraus.
    Geändert von xenway (25.08.2007 um 10:30 Uhr)

  2. #2
    TP-Senior simplicissimus hilft, wo's geht simplicissimus hilft, wo's geht Avatar von simplicissimus
    Registriert seit
    Jan 2007
    Ort
    Köln
    Beiträge
    221
    Hallo,

    hier hast Du einmal ein JS-Prüfung der Checkbox:
    HTML-Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Unbenanntes Dokument</title>
    
    <script language="JavaScript" type="text/javascript">
    <!--
    function pruefeformular()
    {
    if (!document.checkbox.gelesen_verstanden.checked) {
    	alert("Hast Du den Quelltext verstanden?");
    	document.checkbox.gelesen_verstanden.focus();
       return false;
       }
    if (document.checkbox.gelesen_verstanden.checked) {
    	alert("Alles klar.");
       return false;
       }
    }
    -->
    </script>
    
    </head>
    
    <body>
    <form action="" method="post" name="checkbox" target="_self"
    id="checkbox" onSubmit="return pruefeformular()">
      <p>
        Ich habe den Quelltext gelesen und verstanden:
    	  <input name="gelesen_verstanden" type="checkbox" 
    id="gelesen_verstanden" value="OK">
    </p>
      <p>
        <input type="submit" name="Submit" value="Senden" />
    </p>
    </form>
    </body>
    </html>
    Mit liebem Gruß
    simplicissimus

  3. #3
    TP-Newbie xenway macht alles soweit korrekt
    Registriert seit
    Jul 2007
    Beiträge
    2
    Hi,
    Danke erstmal für Deine Antwort,jedoch funktioniert es leider nicht.
    Hab die Funktion "pruefformular" eingebunden und angepasst (checkbox).

    Geht leider nichts .

  4. #4
    TP-Junior Greg944 macht alles soweit korrekt
    Registriert seit
    Aug 2007
    Beiträge
    12
    aus dem 2. "return" ein "return true" machen?

+ Antworten

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51