PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   Problem mit einem Email Formular (http://www.selfphp.de/forum/showthread.php?t=14532)

Buettgenbach 11.09.2006 10:11:39

Problem mit einem Email Formular
 
Hallo zusammen.

Habe mich etwas mit dem Content dieser Seite beschäftigt und bin auf die Mailfunktion in php gestoßen. Klasse dachte ich mir also, kann man das doch bestimmt super für die eigene Seite verwenden.

Gesagt getan und die Datei kontakt:send.php erstelt. Alles funktioniert prima dank der Anweisungen hier auf der Seite mit einer Ausnahme die ich nicht verstehe. Die Mail wird zwar wie vorgegeben versendet im Format etc. ABER trotz eingabe ohne Inhalt.. hab ich evtl. an diesen Befehlen was falsch gemacht?

Hier mal zwei Auszüge aus der Datei:

PHP-Code:

    $timestamp time();
    
$datum date("d.m.Y"$timestamp);
    
$zeit date("H:i"$timestamp);
    
    
$rueckruf_datum $rueckruf_am_tag.".".$rueckruf_am_monat.".".$rueckruf_am_jahr;
    
$rueckruf_uhrzeit $rueckruf_von." bis ".$rueckruf_bis." Uhr.";

$nachricht htmlentities($nachricht);
$nachricht nl2br($nachricht);

$empfaenger = array('INFO<ff@ggggg.com>');

$empfaengerCC = array('COPY CC<aa@bbbbb.com>');

$empfaengerBCC = array('BLINDCOPY BCC<xx@yyyyy.com>');

$absender 'Internetseite<internetseite@worldwideweb.com>';

$reply 'Administrator<admin@internetseite.com>';

$subject 'Internetseite'

Oben zu sehen die Angabe für Rückruf Zeit/Datum etc.

PHP-Code:

$message '<html>
<head>
<title>Mail der Seite</title>
</head>

<body bgcolor="#FFFFFF">
<table width="523" border="0" cellspacing="0" cellpadding="0" height="*%">
  <tr> 
    <td><img src="http://www.ggg.com/kontakt/logo.gif" width="523" height="53"></td>
  </tr>
  <tr> 
    <td> 
      <table width="523" border="0" cellspacing="0" cellpadding="0" height="*%">
        <tr align="left" valign="top"> 
          <td width="393">
            <table width="393" border="0" cellspacing="0" cellpadding="0">
              <tr> 
                <td height="25"></td>
              </tr>
              <tr> 
                <td><b><img src="http://www.ggg.com/kontakt/header.gif" width="227" height="25"></b></td>
              </tr>
              <tr> 
                <td height="10"></td>
              </tr>
              <tr> 
                <td> 
                  <hr noshade>
                </td>
              </tr>
              <tr> 
                <td height="10"></td>
              </tr>
              <tr> 
                <td><b><font face="Arial, Helvetica, sans-serif" size="2">'
.$name.'</font></b></td>
              </tr>
              <tr> 
                <td><font face="Arial, Helvetica, sans-serif" size="2">'
.$strasse.'</font></td>
              </tr>
              <tr> 
                <td><font face="Arial, Helvetica, sans-serif" size="2">'
.$plz.' '.$ort.</font></td>
              </
tr

Hier zu sehen die Angabe für die Postleitzahl Ort usw. die alle in der späteren Email leider nicht erscheinen... evtl. weiß jemand von euch was ich da falsch gemacht haben könnte.

Vielen Danke schon mal im Voraus.

PS: Bei Bedarf poste ich auch gerne die Vollständige Datei. Nochmals vielen Dank.

MatMel 11.09.2006 11:12:52

AW: Problem mit einem Email Formular
 
Poste am besten mal die Stelle an der $plz, $ort, $strasse und $name gefüllt werden.

Weil wenn ich dich richtig verstanden habe kommt ja der rest der Mail an. Dann müsste es daran liegen, dass die Variablen nicht richtig gefüllt sind.

Buettgenbach 11.09.2006 11:19:22

AW: Problem mit einem Email Formular
 
Hallo MatMel.

Also hier in der eigentlichen KontaktSeite in HTML werden diese Sachen ausgefüllt.

Auszug aus der Datei:

PHP-Code:

.
.
.
.
.
<
tr
            <
td width="1"></td>
            <
td width="60" align="left"><font face="Arial, Helvetica, sans-serif" size="2" class="text_bold">Name</font
            </
td>
            <
td width="10" align="left"><font face="Arial, Helvetica, sans-serif" size="2" class="text">:</font></td>
            <
td width="155"><font face="Arial, Helvetica, sans-serif" size="2"
              <
input type="text" name="name" style="border:1 solid #000000;" tabindex="1" class="text">
              </
font></td>
            <
td width="60"><font face="Arial, Helvetica, sans-serif" size="2" class="text_bold">Telefon</font></td>
            <
td width="10"><font face="Arial, Helvetica, sans-serif" size="2" class="text">:</font></td>
            <
td width="155"><font face="Arial, Helvetica, sans-serif" size="2"
              <
input type="text" name="telefon" style="border:1 solid #000000;" tabindex="6" class="text">
              </
font></td>
          </
tr>
          <
tr
            <
td width="1"></td>
            <
td width="60" align="left"><font face="Arial, Helvetica, sans-serif" size="2" class="text">Strasse</font></td>
            <
td width="10" align="left"><font face="Arial, Helvetica, sans-serif" size="2" class="text">:</font></td>
            <
td width="155"><font face="Arial, Helvetica, sans-serif" size="1"
              <
input type="text" name="strasse" style="border:1 solid #000000;" tabindex="2" class="text">
              </
font></td>
            <
td width="60"><font face="Arial, Helvetica, sans-serif" size="2" class="text">Telefax</font></td>
            <
td width="10"><font face="Arial, Helvetica, sans-serif" size="2" class="text">:</font></td>
            <
td width="155"> <font face="Arial, Helvetica, sans-serif" size="2"
              <
input type="text" name="telefax" style="border:1 solid #000000;" tabindex="7" class="text">
              </
font></td>
          </
tr>
          <
tr
            <
td width="1">&nbsp;</td>
            <
td width="60" align="left"><font face="Arial, Helvetica, sans-serif" size="2" class="text">PLZ</font></td>
            <
td width="10" align="left"><font face="Arial, Helvetica, sans-serif" size="2" class="text">:</font></td>
            <
td width="155"><font face="Arial, Helvetica, sans-serif" size="2"
              <
input type="text" name="plz" maxlength="5" style="border:1 solid #000000;" tabindex="3" class="text">
              </
font></td>
            <
td width="60"><font face="Arial, Helvetica, sans-serif" size="2" class="text_bold">eMail</font></td>
            <
td width="10"><font face="Arial, Helvetica, sans-serif" size="2" class="text">:</font></td>
            <
td width="155"> <font face="Arial, Helvetica, sans-serif" size="2"
              <
input type="text" name="email" style="border:1 solid #000000;" tabindex="8" class="text">
              </
font></td>
          </
tr>
          <
tr
            <
td width="1">&nbsp;</td>
            <
td width="60" align="left"><font face="Arial, Helvetica, sans-serif" size="2" class="text">Ort</font></td>
            <
td width="10" align="left"><font face="Arial, Helvetica, sans-serif" size="2" class="text">:</font></td>
            <
td width="155"><font face="Arial, Helvetica, sans-serif" size="2"
              <
input type="text" name="ort" style="border:1 solid #000000;" tabindex="4" class="text">
              </
font></td>
            <
td width="60">&nbsp;</td>
            <
td width="10">&nbsp;</td>
            <
td width="155">&nbsp;</td>
          </
tr>
.
.


Hoffe das ist so korrekt das die Text bzw. Eingabefelder den Selben Namen tragen müssen wie die zu übertragenden Daten.. hier ja z.B. '.$ort.' in der php-Datei = input type="text" name="ort" in der HTML Datei.

Grüße

PS:
PHP-Code:

<input type="submit" name="button_senden" value="Senden" style="background:#FFFFFF; border:1 solid #000000;" tabindex="16">
<
input type="reset" name="button_loeschen" value="L&ouml;schen" style="background:#FFFFFF; border:1 solid #000000;" tabindex="17">
<
input type="button" name="button_drucken" value="Drucken" onClick="MM_callJS('print()')" style="background:#FFFFFF; border:1 solid #000000;" 


xlb 11.09.2006 12:45:13

AW: Problem mit einem Email Formular
 
Hallo ...

Zitat:

z.B. '.$ort.' in der php-Datei
Wahrscheinlich liegt genau da der "Fehler".

Hast du in deinem Formular als "method" z.B. POST festgelegt und sind bei der von dir verwendeten Konfiguration die "register_globals" deaktiviert (was sie sein sollten), dann hast du auf die Formular-Variablen Zugriff per $_POST['NAME_DER_VARIABLEN'].

Buettgenbach 11.09.2006 14:12:33

AW: Problem mit einem Email Formular
 
Hallo und Danke für den Tip.

Verstehe ich das richtig das z.B. statt für PLZ/Ort:

PHP-Code:

<td><font face=3D"Arial, Helvetica, sans-serif" size=3D"2">'.$plz.' '.$ort.'</font></td

müsste dann da...

PHP-Code:

<td><font face="Arial, Helvetica, sans-serif" size="2">'$_POST[plz];' '$_POST[ort];'</font></td

stehen um auf die Variablen in der HTML Datei...

PHP-Code:

<td width="1">&nbsp;</td>
<
td width="60" align="left"><font face="Arial, Helvetica, sans-serif" size="2" class="text">PLZ</font></td>
<
td width="10" align="left"><font face="Arial, Helvetica, sans-serif" size="2" class="text">:</font></td>
<
td width="155"><font face="Arial, Helvetica, sans-serif" size="2"
<
input type="text" name="plz" maxlength="5" style="border:1 solid #000000;" tabindex="3" class="text">
</
font></td>
<
td width="1">&nbsp;</td>
<
td width="60" align="left"><font face="Arial, Helvetica, sans-serif" size="2" class="text">Ort</font></td>
<
td width="10" align="left"><font face="Arial, Helvetica, sans-serif" size="2" class="text">:</font></td>
<
td width="155"><font face="Arial, Helvetica, sans-serif" size="2"
<
input type="text" name="ort" style="border:1 solid #000000;" tabindex="4" class="text">
</
font></td

..zugreifen zu können ist das soweit korrekt - verzeihung wenn ich den ein oder anderen mit solch fragen nerve aber ich lerne das ganze leider noch von daher bitte ich um etwas Verständnis, danke.

xlb 11.09.2006 14:35:13

AW: Problem mit einem Email Formular
 
Zitat:

mit solch fragen nerve aber ich lerne das ganze leider noch
Ne, Ne, .. keine Sorge ! Hier "nerven" ganz andere, glaub'ich. Wir haben alle mal bei Null begonnen.

Ist "fast" richtig. So z.B. wär's dann korrekt :
Code:

echo '<td><font face="Arial, Helvetica, sans-serif" size="2">'.$_POST['plz'].' '. $_POST['ort'].'</font></td>';
Mal was zum lesen : Warum funktionieren meine Formulare nicht?

Buettgenbach 11.09.2006 15:57:23

AW: Problem mit einem Email Formular
 
Vielen Dank für die Info xlb.

PHP-Code:

echo '<td><font face="Arial, Helvetica, sans-serif" size="2">'.$_POST['plz'].' '$_POST['ort'].'</font></td>'

hat leider so nciht ganz funktioniert.. habe immer eine Error erhalten.

aber ohne
PHP-Code:

echo '[...]'

sprich:
PHP-Code:

<td><font face="Arial, Helvetica, sans-serif" size="2">'.$_POST['plz'].' '. $_POST['ort'].'</font></td

funktionierts Prima.

Vielen Dank nochmal. Hat mir wirklich sehr weitergeholfen. :)

Grüße

xlb 11.09.2006 16:05:46

AW: Problem mit einem Email Formular
 
Jo - das du einen Fehler erhältst, wenn du den von mir geposteten Code genauso in deinen Code "einbaust" ist schon klar. War auch nur als Beispiel gedacht. Wenn du das "echo"-Gedöns "für sich alleine" schreiben würdest, gäb's auch keinen Fehler ... ;)

Buettgenbach 11.09.2006 16:08:42

AW: Problem mit einem Email Formular
 
Hehe, ok ich denke man sieht das ich noch ne Menge lernen muss, aber es funktioniert jetzt einwandfrei und der Link ist auch sehr hilfreich - les da schon die ganze Zeit sehr interessiert.

Also vielen Dank nochmal. :)

Grüße


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:36:21 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.