Antworten auf deine Fragen:
Neues Thema erstellen

Kontaktformular funktioniert nicht

Elaii

Noch nicht viel geschrieben

Hallo :)

Bin momentan am Erstellen eines Kontaktformulars, nur leider klappt es nicht und ich weiß nich wieso

Das ganze sieht folgendermaßen aus:

HTML:
<div id="inhalt"><h3>Sie haben Fragen?</h3><br/>
<p>Oder Sie wünschen ein individuelles Angebot? Dann senden Sie uns einfach Ihre Kontaktdaten mit Ihren Informationswünschen.</p><br/>

<?php
$fehler ="";
$mail = "blabla@googlemail.com";
$betreff = "";
$vorname = $_POST["vorame"];
$nachname = $_POST["nachname"];
$funktion = $_POST["funktion"];
$firma = $_POST["firma"];
$strasse = $_POST["strasse"];
$plz = $_POST["plz"];
$telefon = $_POST["telefon"];
$fax = $_POST["fax"];
$mail = $_POST["mail"];
$eintrag = $_POST["eintrag"];

if(isset($_POST["abschicken"]))
  {
   
    if(empty($_POST["vorame"]))
    {
        $fehler .= "Fehler!";
        echo "Bitte geben Sie Ihren Vornamen an!<br>";
       }
    
    if(empty($_POST["nachname"]))
    {
        $fehler .= "Fehler!";
        echo "Bitte geben Sie Ihren Nachnamen an!<br>";
       }
    
    if(empty($_POST["strasse"]))
    {
        $fehler .= "Fehler!";
        echo "Bitte geben Sie Ihre Straße an!<br>";
       }
    
    if(empty($_POST["plz"]))
    {
        $fehler .= "Fehler!";
        echo "Bitte geben Sie Ihre PLZ an!<br>";
       }
    
    if(empty($_POST["telefon"]))
    {
        $fehler .= "Fehler!";
        echo "Bitte geben Sie Ihre Telefonnummer an!<br>";
       }
    
    if(empty($_POST["mail"]))
    {
        $fehler .= "Fehler!";
        echo "Bitte geben Sie Ihre E-Mail-Adrsse an!<br>";
       }
 
    if($fehler == "")
    {
        $inhalt =     "Vorname: " . $vorname .  chr(10) .
                    "Nachname: " . $nachname .  chr(10) .
                    "Funktion: " . $funktion .  chr(10) .
                    "Firma: " . $firma .  chr(10) .
                    "Straße: " . $strasse .  chr(10) .
                    "PLZ: " . $plz .  chr(10) .
                    "Telefon: " . $telefon .  chr(10) .
                    "Fax: " . $fax .  chr(10) .
                    "Mail: " . $mail .  chr(10) .
                    "Eintrag: " . $eintrag .  chr(10) .
    
        mail($an, $betreff, $inhalt);
        echo "Mail versendet!";
    }
    
}
?>

<form action="<?php print $_SERVER['PHP_SELF']; ?>" method="POST">
<table id="tabelle">
    <tr>
        <td>Vorname *</td>
        <td><input type="text" name="vorame"></td>
       </tr>
    <tr>
        <td>Nachname *</td>
        <td><input type="text" name="nachname"></td>
       </tr>
    <tr>
        <td>Funktion</td>
        <td><input type="text" name="funktion"></td>
       </tr>
    <tr>
        <td>Firma</td>
        <td><input type="text" name="firma"></td>
      </tr>
    <tr>
        <td>Straße / Nr. *</td>
        <td><input type="text" name="strasse"></td>
      </tr>
    <tr>
        <td>PLZ / Ort *</td>
        <td><input type="text" name="plz"></td>
       </tr>
    <tr>
        <td>Telefon *</td>
        <td><input type="text" name="telefon"></td>
       </tr>
    <tr>
        <td>Fax</td>
        <td><input type="text" name="fax"></td>
       </tr>
    <tr>
        <td>E-Mail-Adresse *</td>
        <td><input type="text" name="mail"></td>
       </tr>
    <tr>
        <td>Ihre Nachricht an mich</td>
        <td><textarea name="eintrag" cols="50" rows="20"></textarea></td>
       </tr>
    <tr>
        <td>* Angaben erforderlich</td>
       </tr>
    <tr>
        <td><input type="submit" value="abschicken" name="abschicken"></td>
        <td><input type="reset" value="zur&uuml;cksetzen" name="reset"></td>
       </tr>
</table>
</form>
</div>

Kann mir da jemand helfen ?
 

layoutbraut

Codegirl

AW: Kontaktformular funktioniert nicht

Ich habe mehrere Fehler gefunden, letztendlich funktionierts bei mir jetzt.
Versuchs mal damit:

HTML:
<div id="inhalt"><h3>Sie haben Fragen?</h3><br/>
<p>Oder Sie wünschen ein individuelles Angebot? Dann senden Sie uns einfach Ihre Kontaktdaten mit Ihren Informationswünschen.</p><br/>

<?php
$fehler ="";
$an = "blabla@googlemail.com";
$betreff = "";
$vorname = $_POST["vorname"];
$nachname = $_POST["nachname"];
$funktion = $_POST["funktion"];
$firma = $_POST["firma"];
$strasse = $_POST["strasse"];
$plz = $_POST["plz"];
$telefon = $_POST["telefon"];
$fax = $_POST["fax"];
$mail = $_POST["mail"];
$inhalt = $_POST["inhalt"];

if(isset($_POST["abschicken"]))
  {
   
    if(empty($_POST["vorname"]))
    {
        $fehler .= "Fehler!";
        echo "Bitte geben Sie Ihren Vornamen an!<br>";
       }
    
    if(empty($_POST["nachname"]))
    {
        $fehler .= "Fehler!";
        echo "Bitte geben Sie Ihren Nachnamen an!<br>";
       }
    
    if(empty($_POST["strasse"]))
    {
        $fehler .= "Fehler!";
        echo "Bitte geben Sie Ihre Straße an!<br>";
       }
    
    if(empty($_POST["plz"]))
    {
        $fehler .= "Fehler!";
        echo "Bitte geben Sie Ihre PLZ an!<br>";
       }
    
    if(empty($_POST["telefon"]))
    {
        $fehler .= "Fehler!";
        echo "Bitte geben Sie Ihre Telefonnummer an!<br>";
       }
    
    if(empty($_POST["mail"]))
    {
        $fehler .= "Fehler!";
        echo "Bitte geben Sie Ihre E-Mail-Adrsse an!<br>";
       }
 
    if($fehler == "")
    {
        $inhalt =     "Vorname: " . $vorname .  chr(10) .
                    "Nachname: " . $nachname .  chr(10) .
                    "Funktion: " . $funktion .  chr(10) .
                    "Firma: " . $firma .  chr(10) .
                    "Straße: " . $strasse .  chr(10) .
                    "PLZ: " . $plz .  chr(10) .
                    "Telefon: " . $telefon .  chr(10) .
                    "Fax: " . $fax .  chr(10) .
                    "Mail: " . $mail .  chr(10) .
                    "Eintrag: " . $inhalt .  chr(10) .
    
        mail($an, $betreff, $inhalt);
        echo "Mail versendet!";
    }
    
}
?>

<form action="<?php print $_SERVER['PHP_SELF']; ?>" method="POST">
<table id="tabelle">
    <tr>
        <td>Vorname *</td>
        <td><input type="text" name="vorname"></td>
       </tr>
    <tr>
        <td>Nachname *</td>
        <td><input type="text" name="nachname"></td>
       </tr>
    <tr>
        <td>Funktion</td>
        <td><input type="text" name="funktion"></td>
       </tr>
    <tr>
        <td>Firma</td>
        <td><input type="text" name="firma"></td>
      </tr>
    <tr>
        <td>Straße / Nr. *</td>
        <td><input type="text" name="strasse"></td>
      </tr>
    <tr>
        <td>PLZ / Ort *</td>
        <td><input type="text" name="plz"></td>
       </tr>
    <tr>
        <td>Telefon *</td>
        <td><input type="text" name="telefon"></td>
       </tr>
    <tr>
        <td>Fax</td>
        <td><input type="text" name="fax"></td>
       </tr>
    <tr>
        <td>E-Mail-Adresse *</td>
        <td><input type="text" name="mail"></td>
       </tr>
    <tr>
        <td>Ihre Nachricht an mich</td>
        <td><textarea name="inhalt" cols="50" rows="20"></textarea></td>
       </tr>
    <tr>
        <td>* Angaben erforderlich</td>
       </tr>
    <tr>
        <td><input type="submit" value="abschicken" name="abschicken"></td>
        <td><input type="reset" value="zur&uuml;cksetzen" name="reset"></td>
       </tr>
</table>
</form>
</div>
 
S

style

Guest

AW: Kontaktformular funktioniert nicht

Toll, das Formular funkftioniert auf meiner HTML-Seite schon mal sehr gut!
Aber muß ich dann nicht auch noch ein .php-Skript auf den Server legen, damit ich die Daten zurückgeschickt bekomme?
Wie muß ich dieses Skript aufbauen?
Wäre super wenn mir das jemand zeigen könnte.
Danke
 

layoutbraut

Codegirl

AW: Kontaktformular funktioniert nicht

Eigentlich musst Du nur in Zeile 6 deine Emailadresse angeben, dann solltest du bei nem Kontaktversuch eine Mail erhalten. Funktioniert aber nicht auf localhost, dafür muss die Seite online getestet werden.

Korrigiert mich, wenn ich mich irre.
 

lachender_engel

Aktives Mitglied

AW: Kontaktformular funktioniert nicht

Toll, das Formular funkftioniert auf meiner HTML-Seite schon mal sehr gut!
Aber muß ich dann nicht auch noch ein .php-Skript auf den Server legen, damit ich die Daten zurückgeschickt bekomme?
Wie muß ich dieses Skript aufbauen?
Wäre super wenn mir das jemand zeigen könnte.
Danke
Bei dem Skript handelt es sich um eine PHP-Datei. Sie MUSS auch die Endung .php - also z.B. kontakt.php - haben. PHP wird serverseitig ausgeführt weshalb Du für die volle Funktionen einen Webserver benötigst. Einfach per Doppelklick im Brwoser öffnen klappt nicht.
Entweder hast Du schon ein Hosting, dann testest Du das Skript dort, oder Du kannst lokal z.B. XAMPP nutzen. Das ist ein Paket dass dir Lokal einen Apache-Webserver mit PHP bereitstellt.
 

Elaii

Noch nicht viel geschrieben

AW: Kontaktformular funktioniert nicht

Dachte ich mir schon, dass es nicht funktioniert, weil die Seite noch nicht online ist
Danke für die Bestätigung :)
Ab Montag ist sie online, dann sehe ich ja, ob es daran liegt oder nicht
Vielen Dank für die Antworten !
 
S

style

Guest

AW: Kontaktformular funktioniert nicht

Bei dem Skript handelt es sich um eine PHP-Datei. Sie MUSS auch die Endung .php - also z.B. kontakt.php - haben. PHP wird serverseitig ausgeführt weshalb Du für die volle Funktionen einen Webserver benötigst. Einfach per Doppelklick im Brwoser öffnen klappt nicht.
Entweder hast Du schon ein Hosting, dann testest Du das Skript dort, oder Du kannst lokal z.B. XAMPP nutzen. Das ist ein Paket dass dir Lokal einen Apache-Webserver mit PHP bereitstellt.

Ja klar!
Es genügt nicht einfach nur den php-Code in meine kontakt.html einzubinden.
Ich müßte dann direkt eine kontakt.php draus machen, damit es Serverseitig klappt!
Danke für die Hilfe.;)

P.S.
Ich mußte zunächst hier jeweils die <br> rausschmeisen, damit die Codeteile nicht sichtbar werden in meiner kontakt.html:
$fehler .= "Fehler!"; echo "Bitte geben Sie Ihren Vornamen an!<br>"; } if(empty($_POST["nachname"])) { $fehler .= "Fehler!"; echo "Bitte geben Sie Ihren Nachnamen an!<br>"; } if(empty($_POST["strasse"])) { $fehler .= "Fehler!"; echo "Bitte geben Sie Ihre Straße an!<br>"; } if(empty($_POST["plz"])) { $fehler .= "Fehler!"; echo "Bitte geben Sie Ihre PLZ an!<br>"; } if(empty($_POST["telefon"])) { $fehler .= "Fehler!"; echo "Bitte geben Sie Ihre Telefonnummer an!<br>"; } if(empty($_POST["mail"])) { $fehler .= "Fehler!"; echo "Bitte geben Sie Ihre E-Mail-Adrsse an!<br>"; }

Nochmals Danke für eure Hilfe.
 

Elaii

Noch nicht viel geschrieben

AW: Kontaktformular funktioniert nicht

Das versteh ich nich ganz ..

Also ich hab eine Datei die heißt formular.html, in der meine komplette Seite + das html zu meinem Kontaktformular drin ist und noch:

<?php
include "formular.php";
?>

Da is dann eben mein php Code drin
Ist das korrekt so ?
 

limubai81

Nicht mehr ganz neu hier

AW: Kontaktformular funktioniert nicht

Hi Elaii,

das wird so nicht gehen, da der include-Abschnitt ja auch schon PHP ist und in formular.html nicht aufgerufen werden kann. Du musst schon aus formular.html eine formular.php machen und nicht vergessen die Verlinkungen zum Formular dann mit zu ändern. ;)

lg LiMu
 

Elaii

Noch nicht viel geschrieben

AW: Kontaktformular funktioniert nicht

Soweit klappt jetz alles, vielen Dank für die Hilfe ! :)

Nur ein kleines Problem noch und zwar, dass der Eintrag zwar als "Eintrag:" mitgesendet wird, nur hinter dem Doppelpunkt nichts in der E-Mail steht
Zuerst wurde NUR der Eintrag gesendet, das lag aber daran, dass ich im Code was falsch hatte, das hab ich jetzt im folgenden geändert:

PHP:
if($fehler == "")
    {
        $inhalt =   "Vorname: " . $vorname .  chr(10) .
                    "Nachname: " . $nachname .  chr(10) .
                    "Funktion: " . $funktion .  chr(10) .
                    "Firma: " . $firma .  chr(10) .
                    "Straße: " . $strasse .  chr(10) .
                    "PLZ: " . $plz .  chr(10) .
                    "Telefon: " . $telefon .  chr(10) .
                    "Fax: " . $fax .  chr(10) .
                    "Mail: " . $mail .  chr(10) .
                    "Eintrag: " . $eintrag .  chr(10) ;  // anstatt einem Punkt hier ein ";"

          mail($an, $betreff, $inhalt);
           echo "Mail versendet!";
        }

Jetz kommt alles an, außer der Eintrag selbst
 
Zuletzt bearbeitet:

lachender_engel

Aktives Mitglied

AW: Kontaktformular funktioniert nicht

Wenn Du das so machst wie in Deinem Ausgangspost, muss Du noch diese Zeile einfügen:
PHP:
$eintrag = $_POST["eintrag"];
oder Du schreibst statt $eintrag $inhalt. Das musst Du wissen, wie Deine Variablen heißen.
Dann noch ein Tipp: Du macht eine Ausgabe "Mail versendet!", weißt aber gar nicht, ob sie versendet ist. Daher mein Vorschlag: Erweitere um diese Zeilen:
PHP:
if(mail($an, $betreff, $inhalt)) {
  echo "Mail versendet!";
} else {
  echo "Mail nicht versendet!";
}
Damit gibst Du die Meldung je nach Erfolg oder Misserfolg beim Senden aus.
 

Elaii

Noch nicht viel geschrieben

AW: Kontaktformular funktioniert nicht

Upps, das hab ich ganz vergessen zu erwähnen, die Zeile hatte ich schon eingefügt:

PHP:
$eintrag = $_POST["eintrag"];

Funktioniert leider trotzdem nicht ..
Kann es vielleicht was mit dem "chr(10)" zu tun haben ?

Danke für den Vorschlag, hab ich gleich eingefügt !
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.565
Beiträge
1.538.066
Mitglieder
67.488
Neuestes Mitglied
Andrew56524
Oben