Ergebnis 1 bis 3 von 3

Thema: Auf nicht ausgefüllte Felder testen

  1. #1
    TP-Senior Avatar von lula
    Registriert seit
    Dec 2005
    Beiträge
    119

    Auf nicht ausgefüllte Felder testen

    Hallo

    Ich habe mein Formular soweit wie ich es möchte, aber es gibt da so ein kleines Leckerchen das ich noch einbauen möchte.
    Ich wäre froh wenn ich mit einem Arry durch die einzeln Felder durchlaufen könnte und daß er mir sagt op alles ausgefüllt ist, falls nicht gib mir error falls alles ok schick danke nachricht.
    Aber er schickt mir immer error message auch wenn alles ausgefüllt ist.
    Sieht jemand was ich da falsch anspreche, ich weiß nicht so recht wie ich es richtig machen soll

    Liebe Grüße
    Sandy

    HTML-Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
            "http://www.w3.org/TR/html4/strict.dtd">
    
    <html lang="de">
    
    <head>	
    	<meta http-equiv="content-type" content="text/html;
    			  charset=ISO-8859-1">
    	<title>Feedback</title>
    	<link rel="stylesheet" type="text/css" href="css/styles.css">
    
     <!--[if IE]>
        <style type="text/css">@import url(css/ie.css);</style>
      <![endif]-->
    
    
    </head>		
    
    <body>
        <div id="produkt">
    	<h1>Reparierende Haarpflege</h1>
        <form action="[%self%]" method="post">
    		<input type="hidden" name="return" value="/danke.htm">
    		<input type="hidden" name="subject" value="Feedback-Formular">
    		<div class="daten">
    		  <h2>[%legend%]</h2>
    			<div>Name:<br/>
    			  <input type="text" name="Name" class="text" style="width:200px">
    			</div>
    			<br/>
    			<div>Vorname:<br/>
    			  <input type="text" name="Vorname" class="text" style="width:200px">
    			</div>
    			<br/>
    			<div>Geschlecht:<br/>
    			  <input type="radio" name="Geschlecht" value="weiblich"> weiblich
    			  <input type="radio" name="Geschlecht" value="männlich"> männlich
    			</div>
    			<br/>
    			<div>Alter:
    			  <input type="text" name="Alter" class="text" style="width:50px">
    			</div>
    			
    			<div id="info">
    				<span><b>Dove Repair Therapy "Intensiv Reparatur" 1 Minute Kur-Spülung</b>
    				Pflegt stark geschädigtes Haar intensiv schon in 60 Sekunden.<br/>
    				Ist eine intensiv pflegende Spülung mit integrierter Haarkur für gesund 
    				aussehendes Haar und deutlich weniger Spliss.<br />
    				Mir patentierter Fibre-Active-Technologie, die das Haar von innen repariert.<br/>
    				Das Micro-Moisture Serum kräftigt und schützt es gleichzeitig von außen.<br/>
    				Inhalt: 180ml<br/>
    				Im Handel erhältlich seit August 2010.			
    				</span>
    			</div>
    		</div>	
           <br/>
    	   <div id="main">
    		<div class="frage1">
    		  <legend>1. Wie schätzt Du Dich selbst ein?<b> Tägliche Haarpflege und -styling</b> ist mir...
    		  </legend>
    		  <br />
    		     <legend>
    			  <input type="radio" name="Frage1" value="sehr wichtig">...sehr wichtig
    			  <input type="radio" name="Frage1" value="wichtig">...wichtig
    			  <input type="radio" name="Frage1" value="egal">...egal
    			  <input type="radio" name="Frage1" value="ein bisschen">...ein bisschen
    			  <input type="radio" name="Frage1" value="eher nicht wichtig">...eher nicht wichtig
    			 </legend>			  
    		</div>    
    		<br/>
    		<div class="frage">
    		  <legend>2. <b>Wusstest du,</b> dass Styling Dein Haar strapazieren und schädigen kann?<br />
    		  </legend>
    		     <legend>
    			  <input type="radio" name="Frage2" value="Ja"> Ja
    			  <input type="radio" name="Frage2" value="Ja,schon mal gehört"> Ja,schon mal gehört
    			  <input type="radio" name="Frage2" value="Nein"> Nein
    			 </legend>			  
    		</div>    
    		<br/>
    		<div class="frage">
    		  <legend>3. Dove bietet mit der <b>1 Minuten Kur-Spülung "Intensiv Reparatur"</b><br />
    		  eine Haarpflege, die stark geschädigtes Haar repariert. Das ist...
    		  </legend>
    		  <br />
    		     <legend>
    			  <input type="radio" name="Frage3" value="genau das Richtige für mich">...genau das Richtige für mich
    			  <input type="radio" name="Frage3" value="wichtig">...wichtig
    			  <input type="radio" name="Frage3" value="egal">...egal
    			  <input type="radio" name="Frage3" value="ein bisschen">...ein bisschen
    			  <input type="radio" name="Frage3" value="mir nicht wichtig">...mir nicht wichtig
    			 </legend>			  
    		</div>    
    		<br/>
    		<div class="frage">
    		  <legend>4. Die 1 Minuten Kur-Spülung von Dove "Intensiv Reparatur" umgibt das<br />
              Haar mit einem <b>Schutzschild gegen schädliche äußere Einflüsse.</b><br />
    		  Wie findest du das?
    		  </legend>
    		  <br />
    		     <legend>
    			  <input type="radio" name="Frage4" value="genau das Richtige für mich">...genau das Richtige für mich
    			  <input type="radio" name="Frage4" value="wichtig">...wichtig
    			  <input type="radio" name="Frage4" value="egal">...egal
    			  <input type="radio" name="Frage4" value="ein bisschen">...ein bisschen
    			  <input type="radio" name="Frage4" value="mir nicht wichtig">...mir nicht wichtig
    			 </legend>			  
    		</div>    
    		<br/>
    		<div class="frage">
    		  <legend>5. Zudem repariert die Kur-Spülung <b>Schäden im Inneren des Haares</b><br />
    		  mit einer patentierten Technologie. Das ist...
    		  </legend>
    		  <br />
    		     <legend>
    			  <input type="radio" name="Frage5" value="genau das Richtige für mich">...genau das Richtige für mich
    			  <input type="radio" name="Frage5" value="wichtig">...wichtig
    			  <input type="radio" name="Frage5" value="egal">...egal
    			  <input type="radio" name="Frage5" value="ein bisschen">...ein bisschen
    			  <input type="radio" name="Frage5" value="mir nicht wichtig">...mir nicht wichtig
    			 </legend>			  
    		</div>    
    		<br/>
    		<div class="frage">
    		  <legend>6. Denkst du, <b>dass Du</b> die Dove 1 Minuten Kur-Spülung <b>weiterempfehlen</b><br />
    		  wirst? Bitte trage die <b>Anzahl</b> der Leute ein, denen Du voraussichtlich in den nächsten<br />
    		  Wochen davon erzählst.
    		  </legend>
    		  <br />
    		     <legend>
    			  <input type="text" name="Verwandten" class="text" style="width:50px"> Verwandten
    			  <input type="text" name="Freunden" class="text" style="width:50px"> Freunden
    			  <input type="text" name="Bekannten" class="text" style="width:50px"> Bekannten
    			  <input type="text" name="Kollegen" class="text" style="width:50px"> Kollegen
    			 </legend>			  
    		</div>    
    		<br/>
    		<div class="frage">
    		  <legend>7. Wirst Du Dir die intensiv pflegende 1 Minuten Kur-Spülung von Dove auch<b> selbstkaufen?</b>
    		  </legend>
    		  <br />
    		     <legend>
    			  <input type="radio" name="Frage7" value="Ja"> Ja
    			  <input type="radio" name="Frage7" value="Vermutlich"> Vermutlich
    			  <input type="radio" name="Frage7" value="Weiß noch nicht"> Weiß noch nicht
    			  <input type="radio" name="Frage7" value="Nein"> Nein
    			 </legend>			  
    		</div>    
    		<br/>
    		<div class="frage">
    		  <legend>8. Kannst Du dir vorstellen nochmal ein Produkt mit mir zu testen?</b>
    		  </legend>
    		  <br />
    		     <legend>
    			  <input type="radio" name="Frage8" value="Ja"> Ja
    			  <input type="radio" name="Frage8" value="Nein"> Nein
    			 </legend>			  
    		</div>    
    
    		<br/>
    		<div id="submit">
    			  <input type="submit" name="feedback" class="button" value="Absenden">
    		</div>
    	  </div>
    	</form>
    	</div>
    </body>
    </html>
    	

    PHP-Code:
    <?php
    #-------------------------------------------
    # Globale Daten:
    $mailto "mail@me.de";
    $form_file "feedback.htm";
    $thanks_file "danke.htm";
    $standard_legend "Deine Daten";
    $error_legend '<span style="color:red;">' "Es war nicht alles ausgefüllt:" '</span>';
      

    #-------------------------------------------
    # Entscheiden was zu tun ist:
    if(isset($_POST['feedback']))
       
    check_form_data();
    else
       
    show_form_data(false);
     
    #-------------------------------------------
    # Funktion show_form_data():
    # Formular anzeigen
    function show_form_data($with_error) {
       global 
    $form_file$standard_legend$error_legend$mailto;
       
    $page file_get_contents($form_file);
       
    $page preg_replace("/\[\%self\%\]/"
               
    $_SERVER['SCRIPT_NAME'], $page);      
       if(
    $with_error == true)
          
    $page preg_replace("/\[\%legend\%\]/"
                  
    $error_legend$page);
       else
          
    $page preg_replace("/\[\%legend\%\]/"
                  
    $standard_legend$page);
       echo 
    $page;
       exit();
    }
     
    #-------------------------------------------
    # Funktion check_form_data():
    # Formulareingaben prüfen
    $control = array(  =>$_POST['Name'],
                       
    =>$_POST['Vorname'],
                       
    =>$_POST['Geschlecht'],
                       
    =>$_POST['Alter'],
                       
    =>$_POST['Frage1'],
                       
    =>$_POST['Frage2'],
                       
    =>$_POST['Frage3'],
                       
    =>$_POST['Frage4'],
                       
    =>$_POST['Frage5'],
                      
    10 =>$_POST['Frage7'],
                      
    11 =>$_POST['Frage8']);
    function 
    check_form_data() {
       
    //echo "<pre>", var_dump($_POST), "</pre>";
       
    if(empty ($control))
          
    show_form_data(true);
       else
          
    mail_and_thanks();
    }
     
    #-------------------------------------------
    # Funktion mail_and_thanks():
    # Formulareingaben mailen und Dankeseite ausgeben
    function mail_and_thanks() {
       global 
    $mailto$thanks_file;
       
    $headers "From: {$_POST['Name']} {$_POST['Vorname']} ";
       
    $headers .= "<{$_POST['Mail']}>\r\n";
       
    $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
       
    $headers .= "Content-Transfer-Encoding: 8bit";
       
       
    $inhalt ="1 Tägliche Haarpflege und -styling ist mir <b>{$_POST['Frage1']}</b>" ."<br/>" 
              
    "2 Wusstest du das styling dein Haar strapaziert <b>{$_POST['Frage2']}</b>" ."<br/>" 
              
    "3 Dove bietet eine Haarpflege die stark geschädigtes Haar repariert. Das ist <b>{$_POST['Frage3']}</b>"."<br/>" 
              
    "4 Dove umgibt das Haar mit einem Schutzschild. Wie findest du das? <b>{$_POST['Frage4']}</b>"."<br/>" 
              
    "5 Die Kur-Spülung repariert Schäden im Inneren des Haares. Das ist <b>{$_POST['Frage5']}</b>"."<br/>" 
              
    "6 Ich empfehle es <b>{$_POST['Verwandten']}</b> Verwandten, <b>{$_POST['Freunden']}</b> Freunden,              <b>{$_POST['Bekannten']}</b> Bekannten und <b>{$_POST['Kollegen']}</b> Kollegen"."<br/>" 
              
    "7 Wirst Du Dir die intensiv pflegende 1 Minuten Kur-Spülung von Dove auch selbstkaufen? <b>{$_POST['Frage7']}</b>"."<br/>" 
              
    "8 Kannst Du dir vorstellen nochmal ein Produkt mit mir zu testen? <b>{$_POST['Frage8']}</b>";      
              
      
    mail($mailto$_POST['subject'], $inhalt $headers);
       
    $page file_get_contents($thanks_file);
       echo 
    $page;
       exit();
    }
    ?>

  2. #2
    TP-Veteran Avatar von Scriff
    Registriert seit
    Nov 2002
    Ort
    bei Stuttgart (Esslingen)
    Beiträge
    1.357
    Welche PHP Version wird genutzt ?

    1. ist die Variabel für die Funktion check ... nicht sichtbar und deswegen immer leer.
    nutze:
    PHP-Code:
    global $control 
    in der Funktion , oder lege die Arrayzuweisung in die checkfunktion.

    2. Ich tippe ungetestet mal auch auf die Zeile:

    PHP-Code:
    if(empty ($control)) 
    eigentlich sollte man das Array durchlaufen:

    PHP-Code:
    foreach($control as $wert) {
    if (
    $wert=="") .... else ....

    3. Durch Einsatz von einem Array für die Namenszuweisung kann man alle POSTs in einem Rutsch mit foreach auslesen und auswerten.

    Code:
    <input type="text" name="eingabe[]" class="text" style="width:50px"> ...

  3. #3
    TP-Senior Avatar von lula
    Registriert seit
    Dec 2005
    Beiträge
    119
    Ja genau mit foreach habe ich die möglichkeit durchzulaufen. Vielen Dank

Aktive Benutzer

Aktive Benutzer

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

Ähnliche Themen

  1. [PHP] PHP Kontaktformular "Es wurden nicht alle Felder ausgefüllt"
    Von Silvie im Forum Traum-Dynamik
    Antworten: 6
    Letzter Beitrag: 11.03.2010, 16:36
  2. [Extensions] Kickstarter: Felder werden nicht im BE angezeigt
    Von automatix im Forum TYPO3
    Antworten: 12
    Letzter Beitrag: 05.03.2009, 02:22
  3. [mysql] felder werden nicht eingetragen
    Von Hausmaster im Forum Traum-Dynamik
    Antworten: 15
    Letzter Beitrag: 02.05.2005, 22:41
  4. Ausgefüllte Innenformen
    Von basteidel im Forum Typographie
    Antworten: 4
    Letzter Beitrag: 29.07.2004, 10:33

Aktive Benutzer

Aktive Benutzer

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

     

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

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