php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 15.07.2005, 15:38  
Gast
 
Beiträge: n/a
Standard Kontakrformular funktioniert nur zum Teil

Die frage ist ob mein script kaput ist, oder es einfach nicht auf dem server funktioniert.
komischerweise nutze ich das gleiche script für meine seite und dort funktioniert es auch.
vielleicht könnt ihr mir ja sagen, woran das liegt, denn eine zeitlang funktionierte das kontaktformular ohne probleme.

www.militello-voss.com/kontakt.htm (das ist die übeltäterseite)

das formular:
Code:
<form name="formmailer" action="danke.php" method="post">
                      <table width="338" border="0" cellpadding="5" cellspacing="0" class="text">
                        <tr>
                          <td></td>
                          <td width="61"><input type="radio" name="gender" value="Herr">Herr</td>
                          <td width="58"><input type="radio" name="gender" value="Frau">Frau</td>
                          <td width="93"><input type="radio" name="gender" value="Firma">Firma</td>
                        </tr>
                        <tr>
                          <td width="115">Vorname<span class="wein">*</span>:</td>
                          <td colspan="3"><input name="vname" type="text" class="input" id="vname" size="31">
                          </td>
                        </tr>
                        <tr>
                          <td>Name<span class="wein">*</span>:</td>
                          <td colspan="3"><input name="name" type="text" class="input" id="name" size="31">
                          </td>
                        </tr>
                        <tr>
                          <td>Firma:</td>
                          <td colspan="3"><input name="firma" type="text" class="input" id="firma" size="31"></td>
                        </tr>
                        <tr>
                          <td>Stra&szlig;e:</td>
                          <td colspan="3"><input name="strasse" type="text" class="input" id="strasse" size="31"></td>
                        </tr>
                        <tr>
                          <td>PLZ / Ort: </td>
                          <td colspan="3"><input name="plz" type="text" class="input" id="plz" size="4" maxlength="6">
                              <input name="ort" type="text" class="input" id="ort" size="20"></td>
                        </tr>
                        <tr>
                          <td>Telefon<span class="wein">*</span>:</td>
                          <td colspan="3"><input name="tel" type="text" class="input" id="tel" size="31">
                          </td>
                        </tr>
                        <tr>
                          <td>E-Mail<span class="wein">*</span>:</td>
                          <td colspan="3"><input name="mail" type="text" class="input" id="mail" size="31">
                          </td>
                        </tr>
                        <tr>
                          <td valign="top">Nachricht<span class="wein">*</span>:</td>
                          <td colspan="3" valign="top"><textarea name="text" cols="28" rows="5" class="input" id="text"></textarea>
                          </td>
                        </tr>
                        <tr>
                          <td></td>
                          <td colspan="3"><table width="95%"  border="0" cellpadding="0" cellspacing="0" class="text">
                            <tr>
                              <td colspan="3"> <input type="checkbox" name="checkbox" value="checkbox">
                                Senden Sie mir bitte eine Adresse von einem Weinfachh&auml;ndler in meiner Umgebung zu </td>
                              </tr>
                            <tr>
                              <td width="20%"></td>
                              <td width="25%"></td>
                              <td width="55%"></td>
                            </tr>
                            <tr>
                              <td colspan="3"> <input type="checkbox" name="checkbox" value="checkbox">
                                Sende Sie mir bitte eine Adresse von einem Restaurant in meiner Umgebung zu, die Ihre Weine &amp; &Ouml;l anbieten. </td>
                              </tr>
                          </table></td>
                          </tr> 
                        <tr>
                          <td></td>
                          <td colspan="3"><input name="Submit" type="submit" class="button" value="Anfrage senden">
                              <input name="Submit" type="reset" class="button" value="L&ouml;schen"></td>
                        </tr>
                        <tr>
                          <td></td>
                          <td colspan="3">Alle Felder mit * sind zur Bearbeitung erforderlich. </td>
                        </tr>
                      </table>
                    </form>
die danke.php:
PHP-Code:
<?php
/* Empfänger */
$adresse "dschlueter@augenmerk.de";
$betreff "Anfrage";

/* Fehlende Felder */
if (empty($_POST['name'])) {
  
$status .= "Bitte geben Sie Ihren Namen an !";
}
elseif (empty(
$_POST['vname'])) {
  
$status .= "Bitte geben Sie Ihren Vornamen an !";
}
elseif (empty(
$_POST['text'])) {
  
$status .= "Bitte schreiben Sie etwas in das Nachrichtenfeld !";
}
elseif (empty(
$_POST['mail'])) {
  
$status .= "Bitte füllen Sie das email-feld aus !";
}
elseif (empty(
$_POST['tel'])) {
  
$status .= "Bitte geben Sie Ihre Telefonnummer an !";
} else {

  
/* Pflichtfelder: */
  
$vname 'Vorname: '.$_POST['vname'];
  
$name 'Name: '.$_POST['name'];
  
$tel 'Telefon: '.$_POST['tel'];
  
$email 'E-Mail: '.$_POST['mail'];
  
$text ='Nachricht: '$_POST['text'];

  
/* Zusatzfelder: */
  
$geschlecht 'Geschlecht: '.$_POST['gender']; 
  
$firma 'Firma: '.$_POST['firma'];
  
$strasse 'Strasse: '.$_POST['strasse'];
  
$ort 'Ort: '.$_POST['plz'].' '.$_POST['ort'];
  
$vertriebspartner 'Vertriebspartner senden: '.$_POST['vertriebspartner_senden'];
  
$adresse 'Adresse senden: '.$_POST['adresse_senden'];
  
  
$mailtext 'Anfrage von Militello.de'
  
$mailtext .= "\n"
  
$mailtext .= "\n"
  
$mailtext .= "----------------------------------------------------------------------\n"
  
$mailtext .= "\n"
  
$mailtext .= $geschlecht
  
$mailtext .= "\n"
  
$mailtext .= $vname
  
$mailtext .= "\n"
  
$mailtext .= $name
  
$mailtext .= "\n"
  
$mailtext .= $tel
  
$mailtext .= "\n"
  
$mailtext .= $email
  
$mailtext .= "\n"
  
$mailtext .= $text
  
$mailtext .= "\n"
  
$mailtext .= "\n"
  
$mailtext .= $firma
  
$mailtext .= "\n"
  
$mailtext .= $strasse
  
$mailtext .= "\n"
  
$mailtext .= $ort;  
  
$mailtext .= "\n"
  
$mailtext .= $vertriebspartner;   
  
$mailtext .= "\n"
  
$mailtext .= $adresse

  
mail($adresse,$betreff,$mailtext);
  
$status .= "Vielen Dank für Ihre Anfrage !";

?>
später kommt nur noch die kleine ausgabe (und der rest der seite ):
PHP-Code:
<?php echo $status ?>
//edit:
entschuldigt meinen doppelpost, aber es gibt neuigkeiten.
ich weiss nun, dass es irgendwie an den zwei punkten liegen muss (die beiden checkboxen. habe die im formular ausgeklammert. dann hats aber auch nicht funktioniert. erst als ich das im script selbst ausgeklammert habe, funktioniert das script und ich kriege meine mail.

hoffe das hilft ein wenig.
zur zeit läuft das formular (www.militello-voss.com/kontakt.htm) aber es fehlen halt die zwei punkte, die unbedingt noch drin vorhanden sein müssen.


greets
RoX
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 15.07.2005, 15:49  
Erfahrener Benutzer
 
Registriert seit: 22.01.2005
Beiträge: 422
Connar befindet sich auf einem aufstrebenden Ast
Standard

Ähm .. du hast für die beiden Checkboxen als Name jeweils 'checkbox' gewählt .. schonmal drüber nachgedacht, dass du die unterschiedlich benennen musst?

Mach mal folgendes draus:

Code:
<td colspan="3"><table width="95%"  border="0" cellpadding="0" cellspacing="0" class="text"> 
                            <tr> 
                              <td colspan="3"> <input type="checkbox" name="checkbox1" value="checkbox"> 
                                Senden Sie mir bitte eine Adresse von einem Weinfachh&auml;ndler in meiner Umgebung zu </td> 
                              </tr> 
                            <tr> 
                              <td width="20%"> </td> 
                              <td width="25%"> </td> 
                              <td width="55%"> </td> 
                            </tr> 
                            <tr> 
                              <td colspan="3"> <input type="checkbox" name="checkbox2" value="checkbox"> 
                                Sende Sie mir bitte eine Adresse von einem Restaurant in meiner Umgebung zu, die Ihre Weine &amp; &Ouml;l anbieten. </td> 
                              </tr> 
                          </table></td>
PHP-Code:
<?php
  
if(isset($_POST["checkbox1"])) $checkbox1 true;
  else 
$checkbox1 false;
  if(isset(
$_POST["checkbox2"])) $checkbox2 true;
  else 
$checkbox2 false;
?>

Ich versteh dein Script übrigens eh net ganz, wo z.B. werden die beiden Felder mit POST übergeben?

Code:
$vertriebspartner = 'Vertriebspartner senden: '.$_POST['vertriebspartner_senden']; 
$adresse = 'Adresse senden: '.$_POST['adresse_senden'];

MFG Connar
Connar ist offline  
Alt 15.07.2005, 15:51  
Gast
 
Beiträge: n/a
Standard

und was muss ich im "mailfeld" (bei $mailtext) zum senden schreiben? genau wie jetzt lassen?


greets
RoX
 
Alt 15.07.2005, 15:57  
Erfahrener Benutzer
 
Registriert seit: 22.01.2005
Beiträge: 422
Connar befindet sich auf einem aufstrebenden Ast
Standard

Ich nehm jetzt einfach mal an, dass vertriebspartner und adresse für die beiden checkboxen stehen (wenn nicht, musste das halt anpassen)

PHP-Code:
<?php 
/* Empfänger */ 
$adresse "dschlueter@augenmerk.de"
$betreff "Anfrage"

/* Fehlende Felder */ 
if (empty($_POST['name'])) { 
  
$status .= "Bitte geben Sie Ihren Namen an !"

elseif (empty(
$_POST['vname'])) { 
  
$status .= "Bitte geben Sie Ihren Vornamen an !"

elseif (empty(
$_POST['text'])) { 
  
$status .= "Bitte schreiben Sie etwas in das Nachrichtenfeld !"

elseif (empty(
$_POST['mail'])) { 
  
$status .= "Bitte füllen Sie das email-feld aus !"

elseif (empty(
$_POST['tel'])) { 
  
$status .= "Bitte geben Sie Ihre Telefonnummer an !"
} else { 

  
/* Pflichtfelder: */ 
  
$vname 'Vorname: '.$_POST['vname']; 
  
$name 'Name: '.$_POST['name']; 
  
$tel 'Telefon: '.$_POST['tel']; 
  
$email 'E-Mail: '.$_POST['mail']; 
  
$text ='Nachricht: '$_POST['text']; 

  
/* Zusatzfelder: */ 
  
$geschlecht 'Geschlecht: '.$_POST['gender'];  
  
$firma 'Firma: '.$_POST['firma']; 
  
$strasse 'Strasse: '.$_POST['strasse']; 
  
$ort 'Ort: '.$_POST['plz'].' '.$_POST['ort']; 
  if(isset(
$_POST['checkbox1'])) $vertriebspartner 'Vertriebspartner senden: Ja';
  else 
$vertriebspartner 'Vertriebspartner senden: Nein';
  if(isset(
$_POST['checkbox2'])) $adresse 'Adresse senden: Ja';
  else 
$adresse 'Adresse senden: Nein';
   
  
$mailtext 'Anfrage von Militello.de';  
  
$mailtext .= "\n";  
  
$mailtext .= "\n";  
  
$mailtext .= "----------------------------------------------------------------------\n";  
  
$mailtext .= "\n";  
  
$mailtext .= $geschlecht;  
  
$mailtext .= "\n";  
  
$mailtext .= $vname;  
  
$mailtext .= "\n";  
  
$mailtext .= $name;  
  
$mailtext .= "\n";  
  
$mailtext .= $tel;  
  
$mailtext .= "\n";  
  
$mailtext .= $email;  
  
$mailtext .= "\n";  
  
$mailtext .= $text;  
  
$mailtext .= "\n";  
  
$mailtext .= "\n";  
  
$mailtext .= $firma;  
  
$mailtext .= "\n";  
  
$mailtext .= $strasse;  
  
$mailtext .= "\n";  
  
$mailtext .= $ort;   
  
$mailtext .= "\n";  
  
$mailtext .= $vertriebspartner;    
  
$mailtext .= "\n";  
  
$mailtext .= $adresse;  

  
mail($adresse,$betreff,$mailtext); 
  
$status .= "Vielen Dank für Ihre Anfrage !"
}  
?>

MFG Connar
Connar ist offline  
Alt 15.07.2005, 16:04  
Gast
 
Beiträge: n/a
Standard

jetzt steht da zwar, dass die anfrage gesendet wurde. aber es kommt keine mail.


greets
RoX
 
Alt 15.07.2005, 16:09  
Erfahrener Benutzer
 
Registriert seit: 22.01.2005
Beiträge: 422
Connar befindet sich auf einem aufstrebenden Ast
Standard

Hm, also nomal um sicher zu gehn, das Formular soll so aussehen:

Code:
<form name="formmailer" action="danke.php" method="post"> 
                      <table width="338" border="0" cellpadding="5" cellspacing="0" class="text"> 
                        <tr> 
                          <td> </td> 
                          <td width="61"><input type="radio" name="gender" value="Herr">Herr</td> 
                          <td width="58"><input type="radio" name="gender" value="Frau">Frau</td> 
                          <td width="93"><input type="radio" name="gender" value="Firma">Firma</td> 
                        </tr> 
                        <tr> 
                          <td width="115">Vorname<span class="wein">*</span>:</td> 
                          <td colspan="3"><input name="vname" type="text" class="input" id="vname" size="31"> 
                          </td> 
                        </tr> 
                        <tr> 
                          <td>Name<span class="wein">*</span>:</td> 
                          <td colspan="3"><input name="name" type="text" class="input" id="name" size="31"> 
                          </td> 
                        </tr> 
                        <tr> 
                          <td>Firma:</td> 
                          <td colspan="3"><input name="firma" type="text" class="input" id="firma" size="31"></td> 
                        </tr> 
                        <tr> 
                          <td>Stra&szlig;e:</td> 
                          <td colspan="3"><input name="strasse" type="text" class="input" id="strasse" size="31"></td> 
                        </tr> 
                        <tr> 
                          <td>PLZ / Ort: </td> 
                          <td colspan="3"><input name="plz" type="text" class="input" id="plz" size="4" maxlength="6"> 
                              <input name="ort" type="text" class="input" id="ort" size="20"></td> 
                        </tr> 
                        <tr> 
                          <td>Telefon<span class="wein">*</span>:</td> 
                          <td colspan="3"><input name="tel" type="text" class="input" id="tel" size="31"> 
                          </td> 
                        </tr> 
                        <tr> 
                          <td>E-Mail<span class="wein">*</span>:</td> 
                          <td colspan="3"><input name="mail" type="text" class="input" id="mail" size="31"> 
                          </td> 
                        </tr> 
                        <tr> 
                          <td valign="top">Nachricht<span class="wein">*</span>:</td> 
                          <td colspan="3" valign="top"><textarea name="text" cols="28" rows="5" class="input" id="text"></textarea> 
                          </td> 
                        </tr> 
                        <tr> 
                          <td> </td> 
                          <td colspan="3"><table width="95%"  border="0" cellpadding="0" cellspacing="0" class="text"> 
                            <tr> 
                              <td colspan="3"> <input type="checkbox" name="checkbox1" value="checkbox"> 
                                Senden Sie mir bitte eine Adresse von einem Weinfachh&auml;ndler in meiner Umgebung zu </td> 
                              </tr> 
                            <tr> 
                              <td width="20%"> </td> 
                              <td width="25%"> </td> 
                              <td width="55%"> </td> 
                            </tr> 
                            <tr> 
                              <td colspan="3"> <input type="checkbox" name="checkbox2" value="checkbox"> 
                                Sende Sie mir bitte eine Adresse von einem Restaurant in meiner Umgebung zu, die Ihre Weine &amp; &Ouml;l anbieten. </td> 
                              </tr> 
                          </table></td>
                          </tr> 
                        <tr> 
                          <td> </td> 
                          <td colspan="3"><input name="Submit" type="submit" class="button" value="Anfrage senden"> 
                              <input name="Submit" type="reset" class="button" value="L&ouml;schen"></td> 
                        </tr> 
                        <tr> 
                          <td> </td> 
                          <td colspan="3">Alle Felder mit * sind zur Bearbeitung erforderlich. </td> 
                        </tr> 
                      </table> 
                    </form>

und in der danke.php
PHP-Code:
<?php  
/* Empfänger */  
$adresse "dschlueter@augenmerk.de";  
$betreff "Anfrage";  

/* Fehlende Felder */  
if (empty($_POST['name'])) {  
  
$status .= "Bitte geben Sie Ihren Namen an !";  
}  
elseif (empty(
$_POST['vname'])) {  
  
$status .= "Bitte geben Sie Ihren Vornamen an !";  
}  
elseif (empty(
$_POST['text'])) {  
  
$status .= "Bitte schreiben Sie etwas in das Nachrichtenfeld !";  
}  
elseif (empty(
$_POST['mail'])) {  
  
$status .= "Bitte füllen Sie das email-feld aus !";  
}  
elseif (empty(
$_POST['tel'])) {  
  
$status .= "Bitte geben Sie Ihre Telefonnummer an !";  
} else {  

  
/* Pflichtfelder: */  
  
$vname 'Vorname: '.$_POST['vname'];  
  
$name 'Name: '.$_POST['name'];  
  
$tel 'Telefon: '.$_POST['tel'];  
  
$email 'E-Mail: '.$_POST['mail'];  
  
$text ='Nachricht: '$_POST['text'];  

  
/* Zusatzfelder: */  
  
$geschlecht 'Geschlecht: '.$_POST['gender'];   
  
$firma 'Firma: '.$_POST['firma'];  
  
$strasse 'Strasse: '.$_POST['strasse'];  
  
$ort 'Ort: '.$_POST['plz'].' '.$_POST['ort'];  
  if(isset(
$_POST['checkbox1'])) $vertriebspartner 'Vertriebspartner senden: Ja'
  else 
$vertriebspartner 'Vertriebspartner senden: Nein'
  if(isset(
$_POST['checkbox2'])) $adresse 'Adresse senden: Ja'
  else 
$adresse 'Adresse senden: Nein'
    
  
$mailtext 'Anfrage von Militello.de';   
  
$mailtext .= "\n";   
  
$mailtext .= "\n";   
  
$mailtext .= "----------------------------------------------------------------------\n";   
  
$mailtext .= "\n";   
  
$mailtext .= $geschlecht;   
  
$mailtext .= "\n";   
  
$mailtext .= $vname;   
  
$mailtext .= "\n";   
  
$mailtext .= $name;   
  
$mailtext .= "\n";   
  
$mailtext .= $tel;   
  
$mailtext .= "\n";   
  
$mailtext .= $email;   
  
$mailtext .= "\n";   
  
$mailtext .= $text;   
  
$mailtext .= "\n";   
  
$mailtext .= "\n";   
  
$mailtext .= $firma;   
  
$mailtext .= "\n";   
  
$mailtext .= $strasse;   
  
$mailtext .= "\n";   
  
$mailtext .= $ort;    
  
$mailtext .= "\n";   
  
$mailtext .= $vertriebspartner;     
  
$mailtext .= "\n";   
  
$mailtext .= $adresse;   

  
mail($adresse,$betreff,$mailtext);  
  
$status .= "Vielen Dank für Ihre Anfrage !";  
}   
?>
Dann sollte es eigentlich funktionieren .. (zeigt er keine Fehlermeldungen an?)


MFG Connar
Connar ist offline  
Alt 15.07.2005, 16:16  
Gast
 
Beiträge: n/a
Standard

hmm. auch mit dem was du jetzt geschrieben hast gehts net. status sagt mir, dass alles passt und abgeschickt wurde. aber nicht kommt an


greets
RoX
 
Alt 15.07.2005, 16:31  
Erfahrener Benutzer
 
Registriert seit: 22.01.2005
Beiträge: 422
Connar befindet sich auf einem aufstrebenden Ast
Standard

Ich hab keinen Plan, meine eigenen Mailfunktionen wollen gerade auch nicht mehr (also die, die sonst funktioniert haben (z.B. ein Kontaktformular) geben an, dass verschickt wurde, aber es kommt nix an).
Ich hab wirklich keinen Plan was da los is ...


MFG Connar
Connar ist offline  
Alt 18.07.2005, 09:03  
Gast
 
Beiträge: n/a
Standard

ich habe es nach mehreren weiteren versuchen immer noch nicht hinbekommen. weiß niemand, was ich flasch bzw nicht gut gemacht habe?


greets
RoX
 
Alt 18.07.2005, 09:39  
Erfahrener Benutzer
 
Registriert seit: 27.10.2004
Beiträge: 1.093
PHP-Kenntnisse:
Fortgeschritten
Chr!s
Standard

PHP-Code:
<?php
error_reporting
(E_ALL);
Setz das mal an den Anfang dse Scriptes, und teil uns dann mit, was es für Fehlermeldungen ausgibt (wenn es welche gibt)
Chr!s ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Datenbankeintrag funktioniert nicht phrain PHP Tipps 2008 13 03.04.2008 12:59
JavaScript/PHP: qooxdoo 0.7.1 - Teil 1 : Eine Einführung Zergling-new Tutorials 6 25.01.2008 10:41
PHP: Exceptions - Teil 1 Zergling-new Tutorials 4 05.12.2007 23:31
Teil einer Variablen mit einer Variablen ersetzen ? simsalabim PHP Tipps 2007 11 20.03.2007 20:36
Session funktioniert nicht bei session.use_cookies = Off Quagga PHP Tipps 2007 13 13.01.2007 18:27
PHP-GTK Tutorial Beitragsarchiv 9 02.11.2005 21:07
Pfadangabe in php.ini funktioniert nicht PHP Tipps 2005 10 29.03.2005 15:16
pear mime mail >> attachment funktioniert nicht PHP Tipps 2005 4 28.01.2005 16:23
Abfrage funktioniert unter MySQL aber nicht unter MS SQL Schiedsrichter Datenbanken 2 27.01.2005 15:43
pear mime mail funktioniert nicht überall PHP Tipps 2005 4 05.01.2005 20:42
Dateien erstellen oder schreiben funktioniert nicht im Web PHP Tipps 2004-2 1 05.12.2004 19:39
[Erledigt] move_uploaded_file funktioniert nicht! PHP-Fortgeschrittene 4 23.08.2004 22:41
Session funktioniert nicht PHP Tipps 2004 3 15.08.2004 13:08
Header Location funktioniert nicht PHP Tipps 2004 10 12.08.2004 17:11
[Erledigt] Abfrage funktioniert nicht! Datenbanken 6 29.07.2004 14:59

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
kontakrformular html, if (!empty($_post[\geschlecht\ = \'herr\'])), eles wein, $_post \<input id\, http://www.php.de/php-tipps-2005-2/26798-kontakrformular-funktioniert-nur-zum-teil.html, class=\input\, mailtyp text oder html, kontakrformular in php schreiben, kontakrformular, was ist ein kontakrformular, www.militello.de

Alle Zeitangaben in WEZ +1. Es ist jetzt 20:46 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.