marten: Formmailer

Beitrag lesen

Hallo Ihr,

Danke erstmal für Eure rasche Antwort.

Ich hab jetzt mal einen Link vorbereitet, der das Problem veranschaulicht:

http://www.wp1083220.wp117.webpack.hosteurope.de/versuch/op/menuepunkte/menue_kontakt.php

Ihr befindet Euch hier im Hauptmenuepunkt KONTAKT.

Dort seht Ihr den iframe, wo ihr mal den Link zum

Kontaktformular "Allgemeine Anfrage"

drückt. Damit habt und seht ihr dann das Formular, so wie ich es mir wünsche (optisch gesehen, erstmal). Da könnt ihr irgendwas eingeben und absenden drücken. Reaktion: Reload, ohne weiteres Ergebnis.

Unter dem iframe seht ihr (hab ich jetzt mal auf die schnelle dahin kopiert) das absolut selbige Kontaktformular (sieht n bisschen verschoben aus, macht aber nix). Füllt das Ding mal aus und schickt es ab. Reaktion: Die gewünschte Nachricht an den User erscheint.

So und programmtechnisch sieht das ganze so aus:
Es gibt eine function in einem seperaten Verzeichnis mit dem namen "fkt_formular.php", der Quelltext ist der hier:
-------------------------------------------------------------------------
<?php
$strEmpfaenger = 'martenbreuss@gmx.de';
$strFrom       = '"Formular von HP michaelis-mobile-massage"';
$x        = 1;
$strSubject    = 'blanko'.$x;
$strDelimiter  = ":\t";

if($_POST)
{
 $strMailtext = "";

while(list($strName,$value) = each($_POST))
 {
  $x = $x +1;
  if(is_array($value))
  {
   foreach($value as $value_array)
   {
    $strMailtext .= $strName.$strDelimiter.$value_array."\n";
   }
  }
  else
  {
   $strMailtext .= $strName.$strDelimiter.$value."\n";
  }
 }

if(get_magic_quotes_gpc())
 {
  $strMailtext = stripslashes($strMailtext);
 }

if($x == 4){$strSubject = 'Bitte um Rueckruf'.$x;}
 if($x == 10){$strSubject = 'Geschaeftliche Anfrage'.$x;}
 if($x == 13){$strSubject = 'Massage-Buchung'.$x;}

mail($strEmpfaenger, $strSubject, $strMailtext, "From: ".$strFrom)
  or die("Die Mail konnte nicht versendet werden.");

if($x == 4) {echo "<meta http-equiv="refresh" content="0; URL=menue_form_callback.php">";}
 if($x == 10) {echo "<meta http-equiv="refresh" content="0; URL=menue_form_business.php">";}
 if($x == 13) {echo "<meta http-equiv="refresh" content="0; URL=menue_form_privat.php">";}

exit;
}
?>
------------------------------------------------------------------------
So und dann gibt es ein anderes Verzeichnis, wo die verschiedenen Formulare beschrieben sind. Das Das Formular des genannten und gezeigten Beispiels trägt den Namen "form_kontakt.php" und hat folgenden Quellcode:

------------------------------------------------------------------------
<form action="<?php print $_SERVER['PHP_SELF']; ?>" method="post" style="margin-left:7px; margin-top:3px">
            <dl>
                <dt style="height:21px">Mitteilung:<br><textarea name="Mitteilung" maxlength="1000" value="" rows="5" wrap="Soft" style="width: 560px; margin-left:0px;
                 margin-bottom:10px; border:0px; background-image:url(../bilder/form_grau11.png); background-repeat:no-repeat; height:70px; letter-spacing:1pt;
                 font-size:0.7em; font-weight:500; font-family:Verdana; color:#745A33; padding-top:0px; padding-bottom:1px; padding-right:4px;
                 padding-left:3px"></textarea><br></dt>

<dt style="height:21px; margin-bottom:3px">Kontakt per: <select name="Kontakt per" size="1" style="width:80px; margin-left:90px; margin-bottom:3px;                  margin-top:10px; border:0px; background-image:url(../bilder/form_grau10.png); background-repeat:no-repeat; height:18px; letter-spacing:1pt; font-                       size:0.7em; font-weight:500; font-family:Verdana; color:#745A33; padding-top:0px; padding-bottom:1px; padding-right:4px; padding-left:3px">
                <option>- -</option>
                <option>Email</option>
                <option>Telefon</option>
                <option>Fax</option>
                <option>Post</option>
                </select> an: <br></dt>

<dt style="height:21px">Vor- / Nachname: <input type="text" name="Vor-/Nachname" size="24" style="margin-left:49px; border:0px;
                 background-image:url(../bilder/form_grau10.png); background-repeat:no-repeat; height:18px; letter-spacing:1pt; font-size:0.9em; font-weight:500;                        font-family:Verdana; color:#745A33; padding-top:0px; padding-bottom:1px; padding-right:4px; padding-left:3px" /></dt>

<dt style="height:21px">Straße / Hausnummer: <input type="text" name="Strasse/Hausnummer" size="24" style="margin-left:15px; border:0px;
                 background-image:url(../bilder/form_grau10.png); background-repeat:no-repeat; height:18px; letter-spacing:1pt; font-size:0.9em; font-weight:500;                        font-family:Verdana; color:#745A33; padding-top:0px; padding-bottom:1px; padding-right:4px; padding-left:3px" /></dt>

<dt style="height:21px">Ort / Postleitzahl: <input type="text" name="Ort/PLZ" size="24" style="margin-left:47px; border:0px;
                 background-image:url(../bilder/form_grau10.png); background-repeat:no-repeat; height:18px; letter-spacing:1pt; font-size:0.9em; font-weight:500;                        font-family:Verdana; color:#745A33; padding-top:0px; padding-bottom:1px; padding-right:4px; padding-left:3px"/>
                <input type="button" onclick="location.href='../menuepunkte/menue_terminplaner.php';" value="Terminplaner" style="letter-spacing:1pt; font-size:0.9em;                   font-weight:500; font-family:Verdana; color:#745A33; padding-top:0px; padding-bottom:0px; padding-right:11px; padding-left:11px; margin-left:73px"/>
                </dt>

<dt style="height:21px">Telefonnummer: <input type="text" name="Telefonnummer" size="24" style="margin-left:64px; border:0px;
                 background-image:url(../bilder/form_grau10.png); background-repeat:no-repeat; height:18px; letter-spacing:1pt; font-size:0.9em; font-weight:500;                        font-family:Verdana; color:#745A33; padding-top:0px; padding-bottom:1px; padding-right:4px; padding-left:3px" /></dt>

<dt style="height:21px">Erreichbarkeit: <input type="text" name="Erreichbarkeit" size="24" style="margin-left:73px; border:0px;
                 background-image:url(../bilder/form_grau10.png); background-repeat:no-repeat; height:18px; letter-spacing:1pt; font-size:0.9em; font-weight:500;                        font-family:Verdana; color:#745A33; padding-top:0px; padding-bottom:1px; padding-right:4px; padding-left:3px" />
                <input type="button" onclick="location.href='../menuepunkte/menue_kontakt.php';" value="Kontaktalternative" style="letter-spacing:1pt; font-size:0.9em;                  font-weight:500; font-family:Verdana; color:#745A33; padding-top:0px; padding-bottom:0px; padding-right:11px; padding-left:11px; margin-left:32px"/>
                </dt>

<dt style="height:21px">Faxnummer: <input type="text" name="Faxnummer" size="24" style="margin-left:94px; border:0px;
                 background-image:url(../bilder/form_grau10.png); background-repeat:no-repeat; height:18px; letter-spacing:1pt; font-size:0.9em; font-weight:500;                        font-family:Verdana; color:#745A33; padding-top:0px; padding-bottom:1px; padding-right:4px; padding-left:3px"/></dt>

<dt style="height:23px">Email-Adresse: <input type="text" name="Email-Adresse" size="24" style="margin-left:72px; border:0px;
                 background-image:url(../bilder/form_grau10.png); background-repeat:no-repeat; height:18px; letter-spacing:1pt; font-size:0.9em; font-weight:500;                        font-family:Verdana; color:#745A33; padding-top:0px; padding-bottom:1px; padding-right:4px; padding-left:3px" />
                <input type="submit" value="Senden" style="letter-spacing:1pt; font-size:0.9em; font-weight:500; font-family:Verdana; color:#745A33;                                   padding-top:0px; padding-bottom:0px; padding-right:11px; padding-left:11px; margin-left:113px"/></dt>
            </dl>
</form>
--------------------------------------------------------------------------

Bei der Einbindung an der gewünschten Stelle auf der Homepage schreibe ich dann folgenden text:

--------------------------------------------------------------------------
BEZEICHNUNG, UNWICHTIG
<p style="margin-top: 22px; margin-bottom:310px;">
<strong><a name="KFalga">Kontaktformular "Allgemeine Anfragen"</a></strong></p>

ZURÜCKPFEIL, UNWICHTIG
<p style="margin-bottom:35px;"><a href="javascript:history.back()"><img
src="../bilder/pfeil2.png" title="zurück"></a></p>

DARSTELLUNG EINES FORMULARRAHMENS UND HINTERGRUNDS
<div style="position:absolute; top:705px; left:240px">
<button style="padding-left:300; padding-right:300; padding-top:100px;
padding-bottom:180px">&nbsp;</button>
</div>

POSITIONIERUNG DES EIGENTL. TECHNISCHEN FORMULARS MIT DEREN AUFRUF
<div style="position:absolute; top:710px; left:245px">
   <font face="Verdana" style="letter-spacing:1pt; font-size:1em; font-weight:100; font-family:Verdana; color:#745A33">
        <?PHP include("../formulare/form_kontakt.php");?>
   </font>
</div>
-------------------------------------------------------------------------

Also ich glaube das das Formular die Funktion nicht findet. Als wenn die Funktion versteckt wäre, sozusagen die Funktion nicht global genug definiert ist oder so. Komisch, was?

Gruß Marten