Zum Inhalt springen

Mailform plus Formular - ERROR funktioniert nicht

Erstellt am 15. Juni 2007 · 4 Antworten · letzte Antwort am 17. Juni 2007

Tags: Formhandler, Frage

leibnitz ·

Hallo

ich habe folgendes Problem. Ich habe mir ein Mailform Template gebastelt, siehe Code:

<html><head><!-- ###TEMPLATE_FORM### Form begin -->
</head><body><form name="form###PID###" action="index.php?id=###PID###" method="post">
<div id="bn_frame" style="position:absolute; display:none; height:198px; width:205px; background-color:#ced7d6; overflow:hidden;">
	<iframe src="./fileadmin/template/buchung/hah/hah.php" style="width:208px; margin-left:-1px; border:0px; height:202px; background-color:#ced7d6; overflow:hidden;" border="0"></iframe>
</div>

<script type="text/javascript">
var bn_who="";
function kalender(s)
{	document.getElementById('bn_frame').style.top=yPos + "px";
	document.getElementById('bn_frame').style.left=xPos + "px";
	document.getElementById('bn_frame').style.display='block';	
	bn_who=s;
}

init_mousemove();

var xPos="";
var yPos="";
var docEl = (   typeof document.compatMode != "undefined" && 
                 document.compatMode        != "BackCompat"
                )? "documentElement" : "body";

function init_mousemove() 
{    if(document.layers) document.captureEvents(Event.MOUSEMOVE);
    document.onmousemove =	dpl_mouse_pos;
}

function dpl_mouse_pos(e) 
{   xPos    =  e? e.pageX : window.event.x;
  	yPos    =  e? e.pageY : window.event.y;

	
	if (document.all && !document.captureEvents && docEl) 
	{   xPos    += document[docEl].scrollLeft;
	    yPos    += document[docEl].scrollTop;
	}
    
    if (document.layers) routeEvent(e);
}
</script>

<!-- versteckte Felder begin -->
    ###HIDDENFIELDS###
    <input name="L" value="0" type="hidden" />
    <input name="id" value="###PID###" type="hidden" />
    <input name="submitted" value="1" type="hidden" /><p>
	
<!-- versteckte Felder end -->

<fieldset>
<legend>Ihre persönlichen Daten:</legend>
   <label for="anrede" style="display: block; float: left; width: 100px;">Anrede: </label>
    <span error_anrede="">
       <select name="Anrede" id="nrede" size="1">
	<option value="" selected_anrede_="">bitte auswählen</option>
	<option value="Frau" selected_anrede_frau="">Frau</option>
    <option value="Herr" selected_anrede_herr="">Herr</option>
      </select></span><br />

    <label for="vorname" style="display: block; float: left; width: 100px;">Vorname:*</label>
    <input name="Vorname" id="vorname" value="###value_vorname###" size="35" ###error_vorname###
    <br />
    <label for="name" style="display: block; float: left; width: 100px;">Name:*</label>
    <input name="Name" id="name" value="###value_name###" size="35" ###error_name###
    <br />
    <label for="firma" style="display: block; float: left; width: 100px;">Firma:</label>
    <input name="Firma" id="firma" value="###value_firma###" size="35" type="text" />
    <br />
    <label for="telefon" style="display: block; float: left; width: 100px;">Telefon:*</label>
    <input name="Telefon" id="telefon" value="###value_vorname###" size="35" ###error_telefon###
    <br />
    <label for="fax" style="display: block; float: left; width: 100px;">Fax:</label>
    <input name="Fax" id="fax" value="###value_fax###" size="35" type="text" />
    <br />
    <label for="email" style="display: block; float: left; width: 100px;">E-Mail: *</label>
    <input name="Email" id="email" value="###value_email###" size="35" ###error_email###
</fieldset>
  <fieldset>
<legend>Reisedaten </legend>
<p>
   <label for="Anreise" style="display: block; float: left; width: 100px;">Anreise:</label>
  <input type="text" name="Anreise" value="###value_anreise###" id="start_date" />
  <img src="http://www.domain.de/fileadmin/template/buchung/hah/date_go.gif" alt="Hier Klicken" onclick="kalender(document.getElementById("start_date"));" /><br />
   <label for="Abreise" style="display: block; float: left; width: 100px;">Abreise:</label>
   <input type="text" name="Abreise" value="###value_abreise###" id="end_date" />
   <img src="http://www.domain.de/fileadmin/template/buchung/hah/date_go.gif" alt="Hier Klicken" onclick="kalender(document.getElementById("end_date"));" />
  </fieldset>

<fieldset>
<legend>Reiseteilnehmer </legend>
   <label for="erwachsene" style="display: block; float: left; width: 100px;">Erwachsene</label>
  <select name="Erwachsene" id="erwachsene" size="1" ###error_adult###
	<option value="" selected_erwachsene_="">bitte auswählen</option>
	<option value="1" selected_erwachsene_1="">1</option>
    <option value="2" selected_erwachsene_2="">2</option>
	<option value="3" selected_erwachsene_3="">3</option>
    <option value="4" selected_erwachsene_4="">4</option>
  </select></span><br />
	  
	     <label for="kinder" style="display: block; float: left; width: 100px;">Kinder</label>
  <select name="Kinder" id="kinder" size="1" ###error_child###
	<option value="" selected_kinder_="">bitte auswählen</option>
	<option value="1" selected_erwachsene_1="">1</option>
    <option value="2" selected_erwachsenee_2="">2</option>
	<option value="3" selected_erwachsene_3="">3</option>
    <option value="4" selected_erwachsene_4="">4</option>
  </select></span><br />
	  
	     <label for="haustiere" style="display: block; float: left; width: 100px;">Haustiere</label>
  <select name="Haustiere" id="haustiere" size="1" ###error_pet###
	<option value="" selected_haustiere_="">bitte auswählen</option>
	<option value="Ja" selected_haustiere_ja="">Ja</option>
    <option value="Nein" selected_haustiere_nein="">Nein</option>
  </select></span><br />
	  

</fieldset>

<fieldset>
<legend>Allgemeine Geschäftbedingungen</legend>
<p>
  <label>
  <input type="checkbox" name="agb" value="###agb###" error_agb="" />
  Ich habe die Allgemeinen Geschäfstbedingungen gelesen und bin damit einverstanden. <a href="http://www.domain.de/index.php?id=9" target="_blank">AGB´s anzeigen</a></label>


</p>
</fieldset>
<p><span class="Stil1">* Pflichtfelder</span></p>
<p><!-- Buttons einfügen begin -->
  <input value="absenden" type="submit" />
  <br />
  </p>
</p>
<p><br />
  <!-- Buttons einfügen end -->
  
    <!-- Prüf begin -->
  ###FORM_EXAMINE###
  <!-- Prüf end -->
  <!-- ###TEMPLATE_FORM### Form end -->
  
    <!-- ###TEMPLATE_EMAIL_USER### begin
    email text that is sent to the user (plaintext!)
 -->
  Guten Tag ###Anrede### ###Name###,
  
  vielen Dank für Ihre Nachricht. 
  
  -----------------------------------------------------
  Ihr Name: ###Vorname### ###Name###
  Ihre Firma: ###Firma###
  Ihre Telefonnummer: ###Telefon###
  Ihre Faxnummer: ###Fax###
  Ihre E-Mail-Adresse: ###Email###

  Ihr Anreise Datum: ###Anreise###
  Ihr Abreise Datum: ###Abreise###
  
  Erwachsene: ###Erwachsene###
  Kinder: ###Kinder###
  Haustiere: ###Haustiere###
  
  -----------------------------------------------------
  
  In allen Fällen der gewünschten Kontaktaufnahme Ihrer-
  seits werden wir uns schnellstmöglich mit Ihnen in 
  Verbindung setzen und gern antworten.
  
  Sollten Sie diese Anfrage nicht getätigt haben,
  so könnte ein Dritter diese Daten mit Angabe Ihrer
  E-Mailadresse geschickt haben. 
  Geben Sie in diesem Fall bitte einen kleinen Hinweis.
  
  Vielen Dank,
  mit den besten Grüßen
  
  
 
  <!-- ###TEMPLATE_EMAIL_USER### end -->
  vorname, name, telefon, email, agb, start_date, end_date
  
</p>
</form>
</body></html>

So hab das Template dann eingebunden und funktioniert auch soweit.
Nächster schritt war, die Pflichtfelder zu setzen. Dazu habe ich im template für die pflichtfelder je einen solchen code eingegeben:

email {
errorCheck = email,required
errorText = <li> Bitte geben Sie eine gültige E-Mail Adresse an.</li>
}

Jetzt ist es so, wenn ichdas formular ausfüllen und bewusst ein Pflichtfeld auslasse das der Text dasteht, soweit so gut allerdings sind dann alle bissher eingegebenen daten gelöscht, sie bleiben nicht erhalten. Wieso?

Wie kann ich außerdem für eine Checkbox oder ein Dropdownmenü das Pflichtfeld setzen?

Ich hoffe ihr könnt mir helfen.

MfG Leibnitz

Honk88 ·

zu 2.)

plugin.tx_thmailformplus_pi1.fieldConf.[feldname].defaultValue.value = leer
plugin.tx_thmailformplus_pi1.fieldConf.[feldname].errorCheck = notDefaultValue

lg
Honk

leibnitz ·

hmm

habs jetzt mal im setup hinzugefügt.

was soll denn das bringen? bei mir ändert das absolut nichts

Honk88 ·

am Beispiel dropdown-liste:

sowas in der Art steht in deinem html-tmpl

<tr>
	<td valign="top" class="mf_label">Wählen Sie ein Obst:</td>
	<td valign="top">###error_Obst###
          <select name="Obst" style="width:286px;">
            <option value="leer" ###selected_f0###></option>
            <option value="Apfel" ###selected_f1###>Apfel</option>
            <option value="Birne" ###selected_f2###>Birne</option>
          </select>
        </td>
</tr>
### Check Obst 
plugin.tx_thmailformplus_pi1.fieldConf.Obst.defaultValue.value = leer
plugin.tx_thmailformplus_pi1.fieldConf.Obst.errorCheck = notDefaultValue

Wird in der drop-down-Liste nichts ausgewählt ist der default Wert
"aktive". Der Errorcheck kontrolliert, ob dies so ist und meckert
falls kein Obst ausgewählt wurde.

lg
Honk

leibnitz ·

1. ok ist soweit klar, allerdings ists dann so, dass er das formular zwar nicht versendet aber es wird auch keine fehlermeldung anzeigt.

kann ich da nen Error Text ausgeben?

2. wenn ich schon fehlder wir z.b. name und vorname ausgefüllt habe und ein anderes pflicht feld nicht, anschließen auf senden klicken sind die bereits ausgefüllten felder wieder leer. wie kann ich veranlassen, damit der inhalte bleibt?

3. wie überprüfe ich checkboxen?