• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Fehler im Kontaktformular

87er

Neues Mitglied
Hallo Community,

ich habe an einem kleinen Kontaktformular gebastelt,
bekomme aber keine Ausgabe in der Email!

Kann jemand von Euch einen Fehler erkennen?
Hab auch schon alles abgesucht und bei selfhtml geguckt aber
ich bin ratlos :cry:

formular.html
HTML:
<html>
<body>
<title>Kontakt</title>
<form action="formular.php" method="post">


<b>Ihre Kontaktdaten</b>

<table border="0">
  <colgroup>
    <col width="80">
    <col width="150">
    <col width="10">
    <col width="80">
    <col width="150">
  </colgroup>
  
  <tr>
    <td>Firma</td>
    <td><input type="text" size="20" name="firma"></td>
    <td></td>
    <td>Stra&szlig;e</td>
    <td><input type="text" size="20" name="strasse"></td>
  </tr>
  
 <tr>
    <td>Branche</td>
    <td><input type="text" size="20" name="branche"></td>
    <td></td>
    <td>PLZ</td>
    <td><input type="text" size="20" name="plz"></td>
  </tr>
  
 <tr>
    <td>Name</td>
    <td><input type="text" size="20" name="name"></td>
    <td></td>
    <td>Ort</td>
    <td><input type="text" size="20" name="ort"></td>
  </tr>
  
 <tr>
    <td>Vorname</td>
    <td><input type="text" size="20" name="vorname"></td>
    <td></td>
    <td>Land</td>
    <td><input type="text" size="20" name="land"></td>
  </tr>
  
 <tr>
    <td>Email</td>
    <td><input type="text" size="20" name="email"></td>
    <td></td>
    <td>Telefon</td>
    <td><input type="text" size="20" name="telefon"></td>
  </tr>
  
 </table>
 
 <br /><br />
 
 <b>Welche Modelle interessieren Sie?</b>
 
 <table border="0">
  <colgroup>
    <col width="120">
    <col width="150">
    <col width="20">
    <col width="90">
    <col width="90">
  </colgroup>
  
  <tr>
    <td>Art.-Nr. / Name</td>
    <td><input type="text" size="20" name="artikel1"></td>
    <td></td>
    <td>St&uuml;ckzahl</td>
    <td><input type="text" size="10" name="menge1"></td>
  </tr>
  
  <tr>
    <td>Art.-Nr. / Name</td>
    <td><input type="text" size="20" name="artikel2"></td>
    <td></td>
    <td>St&uuml;ckzahl</td>
    <td><input type="text" size="10" name="menge2"></td>
  </tr>
  
  <tr>
    <td>Art.-Nr. / Name</td>
    <td><input type="text" size="20" name="artikel3"></td>
    <td></td>
    <td>St&uuml;ckzahl</td>
    <td><input type="text" size="10" name="menge3"></td>
  </tr>
  
  </table>
  
  <br /><br />
  
  <b>Gew&uuml;nschter Liefertermin?</b><br />
  
  <table border="0">
  <colgroup>
    <col width="120">
    <col width="19">
    <col width="330">
  </colgroup>
  
  <tr>
    <td>Wunschliefertermin</td>
    <td></td>
    <td><input type="text" size="50" name="liefertermin"></td>
  </tr>
  
  </table>
  
  <br /><br />
  
   <b>Weitere Fragen oder Anregungen?</b>
   
   <table border="0">
  <colgroup>
    <col width="470">
  </colgroup>
  
  <tr>
    <td><textarea name="nachricht" cols="56" rows="3"></textarea></td>
  </tr>
  
  </table>
  
  
  <input type="submit" value="Anfrage absenden"> <input type="reset" value="L&ouml;schen">
</form>
</body>
</html>

formular.php
PHP:
<?

$name = $_POST["name"];
$email = $_POST["email"];
$nachricht = $_POST["nachricht"];
$empfaenger = "[email protected]";
$betreff = "Neue Nachricht per Kontaktformular";


mail($empfaenger, $betreff, $nachricht, "From: ".$email."");

header("Location: abgeschickt.html");

exit();


?>
 
Werbung:
Hab auch schon alles abgesucht und bei selfhtml

Ok, da du ja schon alles abgesucht hast hier mal die Seite wo man schauen sollte. PHP Manual:
PHP: mail - Manual

Ich würde die Seite in meinen Favoriten speichern, denn du wirst sie öfter benötigen.

NB: Dein HTML-Formular solltest du mal überarbeiten, es enthält Fehler.
 
Danke für die schnelle Antwort!
Hab mir Deinen Link mal angeguckt,
den kannte ich glaub ich schon, mein problem grad nur,
dass sagt mir alles nichts. Hab da kaum einen Plan von :sad:

Das Script selbst im Original habe ich hier her: Suche funktionsfähiges HTML Kontaktformular - php.de
Die ganzen Ergänzungen wie Branche usw. hab ich selbst eingetragen,
jetzt krieg ich es nur nicht hin, dass alle in der Mail ausgegeben werden...
Und das problem für mich, ich muss das Kontaktformular heute abend fertig haben -.-

Kann mir vlt. nur jemand ein beispiel zeigen wie man die weiteren Felder einfügt,
so dass sie in der Mail ausgegeben werden? Den rest erledige ich dann.

Und wegen des HTMl Scripts,
hab es auf meinem Server online und funkioniert optisch bis jetzt auf jedenfall.
Bin noch Anfänger :(
 
Werbung:
Und das problem für mich, ich muss das Kontaktformular heute abend fertig haben -.-
Das wirst du wohl nicht schaffen.

Du solltest dich ein wenig in PHP einarbeiten. Es ist fahrlässig mit Formularen und E-Mail-Funktionen zu hantieren, wenn man nicht versteht, was da vor sich geht.

Was machst du wenn einer über deinen Server Spam versendest?
Was machst du wenn einer Unsinn in das Formular eintippt. Und zwar nicht einmal sondern 10000 mal, automatisiert.
Was machst du gegen solches Vorgehen. Zuckst du dann auch mit den Schultern und sagst, wusste ich nicht?
Bin noch Anfänger

Ich will dir den Mut bestimmt nicht nehmen, aber man sollte sich der Gefahr bewust sein und dazu gehört auch mal ein Manual zu lesen. Du musst auch nciht das ganze Manual lesen aber folgende Abschnitte:
Einführung
PHP: Vom Nutzer übermittelte Daten - Manual
PHP: Allgemeine Überlegungen - Manual

und dann eine Anleitung wie man mit PHP programmiert.

HTML solltest du natürlich beherrschen.
 
Ok dann könnte ich ja einfach das PHP verstecken und ein Captcha einbauen oder?
Nur sieht ein Captcha immer doof aus auf Business Seiten,
da Kunden eine Anfrage versenden sollen und keine normalen User...

Eigentlich habe ich gar nicht großartig vor zur Zeit php zu lernen,
dafür habe ich neben meiner Ausbildung zu wenig zeit, da ich bald prüfungen habe...

Gibt es da für die schnelle keine Notlösung?
 
Ok dann könnte ich ja einfach das PHP verstecken und ein Captcha einbauen oder?
Deine Frage zeigt schon, dass du dich nicht mit der Materie ausaienandergesetzt hast.

Nur sieht ein Captcha immer doof aus auf Business Seiten,
da Kunden eine Anfrage versenden sollen und keine normalen User...
Wenn das eine Kundenseite sein wird oder eine Business-Seite, würde ich erst recht empfehlen erst mal HTML, CSS und PHP zu lernen.


Eigentlich habe ich gar nicht großartig vor zur Zeit php zu lernen,
Was soll man da jetzt zu sagen, ausser, dann lass eben komplett die Finger davon.

dafür habe ich neben meiner Ausbildung zu wenig zeit, da ich bald prüfungen habe...
Gibt es da für die schnelle keine Notlösung?
Ja die gibt es. Lass es von einem Profi erledigen.

Fassen wir mal zusammen:
Du möchtest bis heute Abend ein fertiges funktionierendes Formular haben, mit Auswertungen und E-Mail-Versand auf dem Server.
Das Ganze für einen Kunden als Business-Seite.

Ja haben wir denn schon Weihnachten?
Nein im Ernst, das ist eine Wunschvorstellung.
 
Werbung:
Klar hab ich mich mit ausseinander gesetzt,
durch Deinen Link bin ich erst darauf PHP: PHP verstecken - Manual gekommen.
Nur hab ich nicht die Zeit und das Verständnis,
das perfekte Kontaktformular überhaupt zu erstelllen.

Meiner Meinung nach ist das gröbste (der HTMl aufbau) ja schon fertig,
fehler auf der HTML Seite hin oder her.

Aber da muss ein missverständnis aus der Welt,
das Formular ist nicht für einen Kunden von mir,
sondern für einen Bekannten der das Formular für seine Kunden anbieten möchte,
damit diese kontakt mit Ihm aufnehmen können. Und da es sich um eine Ebay Verkäufer Seite handelt,
kann / darf er keine kostenlose Scripte mit Werbelink anbieten (ganz genau weiß ich es nicht, so hat er es mir gesagt)... Und er kennt sich null aus, ich ein wenig...

Und ich möchte ja nicht das hier jemand die arbeit für mich erledigt,
ich hab lediglich um eine kleine hilferstellung gebeten, damit ich den rest selbst übernehmen kann.
Zwar sind die Links von Dir sehr informativ, nur bekomme ich da jetzt kaum was in meine birne,
zudem mir wie gesagt die Zeit fehlt....

Und einen Profi können wir uns nicht leisten...
 
...Meiner Meinung nach ist das gröbste (der HTMl aufbau) ja schon fertig...
Und noch ein Hinweis dafür, dass du einer Fehleinschätzung unterliegst.

Sei's drum.
Ohne auf die Sicherheitsfragen einzugehen, die dich anscheinend eh nicht interessieren:

Die Variable $nachricht beinhaltet derzeit nur die POST-Variable ['nachricht']
Wenn du dem Nachrichtentext weitere POST-Variablen hinzufügen möchtest, kannst du die Variable $nachricht entsprechend ergänzen, indem du sie durch Punkte getrennt aufreihst.
 
Und noch ein Hinweis dafür, dass du einer Fehleinschätzung unterliegst.

Sei's drum.
Ohne auf die Sicherheitsfragen einzugehen, die dich anscheinend eh nicht interessieren:

Die Variable $nachricht beinhaltet derzeit nur die POST-Variable ['nachricht']
Wenn du dem Nachrichtentext weitere POST-Variablen hinzufügen möchtest, kannst du die Variable $nachricht entsprechend ergänzen, indem du sie durch Punkte getrennt aufreihst.

Werde ich gleich direkt mal testen, Danke!

In punkten Sicherheit lege ich schon wert,
nur hab ich das problem das ich es nicht selbst umsetzen kann.
 
Werbung:
Kann auch nicht
nicht ['firma'] ist eine Variable, sonder $_POST['firma']
selbiges gilt für branche und nachricht
information aufnehmen
nachdenken
handeln
 
information aufnehmen
nachdenken
handeln
hat er doch befolgt, schau doch mal was du geschrieben hast:
Die Variable $nachricht beinhaltet derzeit nur die POST-Variable ['nachricht']
Wenn du dem Nachrichtentext weitere POST-Variablen hinzufügen möchtest, kannst du die Variable $nachricht entsprechend ergänzen, indem du sie durch Punkte getrennt aufreihst.
Ich hoffe du verstehst meine kleine Anspielung nicht falsch.
 
Werbung:
hat er doch befolgt, schau doch mal was du geschrieben hast:
Ich hoffe du verstehst meine kleine Anspielung nicht falsch.

Du hast ja recht, verstehe aber von php wie gesagt nich viel,
wahrscheinlich so gut wie gar nichts... Sry


Es klappt! Danke!

Siehe
$nachricht = $_POST["firma"] . $_POST["branche"] . $_POST["nachricht"];

Meine hoffentlich letzte frage noch:

Die Ausgabe in der Email erfolgt jetzt ohne Absatz, ein klassisches <br /> hilf da wohl nicht.
Hab jetzt folgendes getestet:
$nachricht = $_POST["firma"] . "<br />" . $_POST["branche"] . $_POST["nachricht"];

Aber das klappt auch nicht.
 
Daher habe ich dir anfänglich gesagt, dass du mal ins Manual schauen solltest. Das war ja nicht böse gemeint, sondern sollte genau das verhindern. Nämlich, dass du mit jeder Frage hier reingeschneit kommst. Nicht das es uns was ausmacht, aber du hättest mit etwas Leseleistung, diese Frage dann wohl nicht gestellt.

Im Manual steht nämlich ziemlich am Anfang:
message Die zu sendende Nachricht.
Jede Zeile muss durch ein LF-Zeichen (\n) getrennt werden. Außerdem sollten die Zeilen nicht mehr als 70 Zeichen enthalten.




So - jetzt weisst du auch das BR-Tags nicht gehen und du \n stattdessen schreiben musst.

Im Manual sind auch Beispiele.
 
Zurück
Oben