You last visited: Today at 19:54
Advertisement
Bestellformular Hilfe
Discussion on Bestellformular Hilfe within the Web Development forum part of the Coders Den category.
08/10/2012, 15:46
#1
elite*gold: 35
Join Date: May 2011
Posts: 3,757
Received Thanks: 486
Bestellformular Hilfe
Servus, habe nach den Tutorials von
ein Bestellformular erstellt.
Leider zeigt er nicht, wie die eingegebenen Daten von den Usern an meine E-Mail Adresse (
) geschickt werden.
Wäre jemand so freundlich und würde mir das zuende coden?
Ein Platz in meiner Signatur ist euch dann sicher
kontakt.html
Quote:
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
<link href="style_kontakt.css" type="text/css" rel="stylesheet" />
</head>
<body>
<div id="container">
<h1>Bestellung aufgeben</h1>
<form action="auslesen.php" method="post">
<input type="text" class="textfeld" name="name" value="Vorname,Nachname" onfocus="if(this.value=='Vorname,Nachname') ( this.value='')" onblur="if(this.value=='') ( this.value='Vorname,Nachname')"/>
<input type="text" class="textfeld" name="plz" value="PLZ" onfocus="if(this.value='PLZ') ( this.value='')" onblur="if(this.value=='') ( this.value='PLZ')"/>
<input type="text" class="textfeld" name="ort" value="Wohnort" onfocus="if(this.value='Wohnort') ( this.value='')" onblur="if(this.value=='') ( this.value='Wohnort')" />
<input type="text" class="textfeld" name="strasse" value="Straße" onfocus="if(this.value='Straße') ( this.value='')" onblur="if(this.value=='') ( this.value='Straße')" />
<input type="text" class="textfeld" name="hausnummer" value="Hausnummer" onfocus="if(this.value='Hausnummer') ( this.value='')" onblur="if(this.value=='') ( this.value='Hausnummer')" />
<input type="text" class="textfeld" name="mail" value="E-Mail Adresse" onfocus="if(this.value='E-Mail Adresse') ( this.value='')" onblur="if(this.value=='') ( this.value='E-Mail Adresse')" />
<br /><label for="bestellnummern">Bestellnummern:</label>
<textarea name="bestellnummern" rows="10"></textarea>
<br /><label for="textarea">Sonstige Bemerkungen:</label>
<textarea name="sonstige" rows="6"></textarea>
<input type="submit" class="submit" value="Abschicken" />
</form>
</div>
</body>
</html>
auslesen.php
Quote:
<?php
$name = $_POST('name');
$plz = $_POST('plz');
$ort = $_POST('ort');
$strasse = $_POST('strasse');
$hausnummer = $_POST('hausnummer');
$mail = $_POST('mail');
$bestellnummern = $_POST('bestellnummern');
$sonstige = $_POST('sonstige');
echo $name . " " . $plz . " " . $ort . " " . $strasse . " " . $hausnummer . " " . $mail . " " . bestellnummern . " " . $sonstige;
?>
style_kontakt.css
Quote:
" {margin:0px; padding:0px; }
#container {
margin:0px auto;
width:460px;
padding:20px;
background:url(img/kontaktformular.png) no-repeat;
}
label {
font-weight:bold;
color:#787878;
}
h1 {
margin-bottom:30px;
color:#2b2b2b;
}
textarea {
width:450px;
resize:none;
padding:8px;
}
input.textfeld {
width:220px;
margin-bottom:15px;
padding:4px;
border:none;
color:#adadad;
}
input.submit {
width:120px;
height:35px;
padding:0px 10px;
margin-top:5px;
background:url(img/kontakt_button.png) no-repeat;
border:none;
color:#393939;
font-weight:bold;
}
input.submit:active {
background:url(img/kontakt_button_pressed.png) no-repeat;
}
Im Anhang sind die Dateien kontaktformular.png, kontakt_button.png und kontakt_button_pressed.png.
Da ich mich relativ wenig in PHP/CSS auskenne, bitte ich euch, den Code fertig zu stellen. Ich weiß, dass ich davon nix lerne, allerdings stehe ich gerade unter etwas zeitdruck und ich deshalb das Script schnellstmöglich fertig haben möchte.
Attached Images
kontaktformular.jpg
(1.7 KB, 1 views)
kontakt_button.png
(2.6 KB, 1 views)
kontakt_button_pressed.png
(3.3 KB, 1 views)
08/10/2012, 16:16
#2
elite*gold: 203
Join Date: Sep 2007
Posts: 732
Received Thanks: 190
Hi,
für das versenden benötigst du die Funktion mail().
PHP Code:
mail ( $empfaenger , $betreff , $nachricht , $von );
P.s. ich würde deine Post-Angaben, die du in die Varaible speicherst immer escapen (von Programmiercode befreien).
z.B
PHP Code:
$empfaenger = htmlentities ( $_POST [ 'empfaenger' ]);
Das Ganze beruht nicht auf deinen Angaben, es soll dir nur zeigen wie es funktioniert.
Gruß
08/10/2012, 16:44
#3
elite*gold: 0
Join Date: Sep 2005
Posts: 427
Received Thanks: 87
PHP Code:
<?php if(isset( $_POST [ 'submit' ])){ $name = $_POST [ 'name' ]; $plz = $_POST [ 'plz' ]; $ort = $_POST [ 'ort' ]; $strasse = $_POST [ 'strasse' ]; $hausnummer = $_POST [ 'hausnummer' ]; $mail = $_POST [ 'mail' ]; $bestellnummern = $_POST [ 'bestellnummern' ]; $sonstige = $_POST [ 'sonstige' ]; echo $name . " " . $plz . " " . $ort . " " . $strasse . " " . $hausnummer . " " . $mail . " " . $bestellnummern . " " . $sonstige ; //An wen soll die mail gehen $to = " " ; //betreff der mail $subject = $mail . " hat etwas bestellt" ; //inhalt der mail $message = ' ***************************************\r\n Personalien:\r\n name: ' . $name . '\r\n plz: ' . $name . '\r\n ort: ' . $name . '\r\n strasse/hausnummer: ' . $strasse . '/' . $hausnummer . '\r\n mail: ' . $mail . '\r\n ***************************************\r\n bestellnr:\r\n ' . $bestellnummern . '\r\n ***************************************\r\n sonstiges:\r\n ' . $sonstige . '\r\n ***************************************\r\n ' ; //optionale headerangaben $headers = 'MIME-Version: 1.0' . "\r\n" ; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n" ; //charset=utf-8 falls das ganz international werden sollte... $headers .= 'To: Dave <' . $to . '>' . "\r\n" ; $headers .= 'From: ' . $name . ' <' . $mail . '>' . "\r\n" ; //und das ganze senden mail ( $to , $subject , $message , $headers ); }
HTML Code:
<form action="auslesen.php" method="POST" >
<input type="text" class="textfeld" name="name" value="Vorname,Nachname" onfocus="if(this.value=='Vorname,Nachname') ( this.value='')" onblur="if(this.value=='') ( this.value='Vorname,Nachname')" />
<input type="text" class="textfeld" name="plz" value="PLZ" onfocus="if(this.value='PLZ') ( this.value='')" onblur="if(this.value=='') ( this.value='PLZ')" />
<input type="text" class="textfeld" name="ort" value="Wohnort" onfocus="if(this.value='Wohnort') ( this.value='')" onblur="if(this.value=='') ( this.value='Wohnort')" />
<input type="text" class="textfeld" name="strasse" value="Straß e" onfocus="if(this.value='Straß e') ( this.value='')" onblur="if(this.value=='') ( this.value='Straß e')" />
<input type="text" class="textfeld" name="hausnummer" value="Hausnummer" onfocus="if(this.value='Hausnummer') ( this.value='')" onblur="if(this.value=='') ( this.value='Hausnummer')" />
<input type="text" class="textfeld" name="mail" value="E-Mail Adresse" onfocus="if(this.value='E-Mail Adresse') ( this.value='')" onblur="if(this.value=='') ( this.value='E-Mail Adresse')" />
<br /> <label for="bestellnummern" > Bestellnummern:</label>
<textarea name="bestellnummern" rows="10" > </textarea>
<br /> <label for="textarea" > Sonstige Bemerkungen:</label>
<textarea name="sonstige" rows="6" > </textarea>
<input type="submit" class="submit" name="submit" value="Abschicken" />
</form>
08/10/2012, 16:52
#4
elite*gold: 35
Join Date: May 2011
Posts: 3,757
Received Thanks: 486
Hey, danke für Antworten euch beiden.
Habe das von kissein ausprobiert, nachdem ich den Abschicken Button gedrückt habe, kommt folgender Fehler:
Quote:
Max muster 12345 Musterhausen Musterstraße 30 838924ß Keine Bemerkungen
Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\xampp\htdocs\auslesen.php on line 48
Linie 48 ist:
Quote:
mail($to, $subject, $message, $headers);
Muss ich da noch was ergänzen oder wo liegt der Fehler?
Edit:
Habe es mit xxamp getestet.
Edit2: Hat sich erledigt, mir hat jemand gesagt, dass der Fehler daran liegt, dass kein mailserver vorhanden ist.
Danke an kissein, Mikesch01 und f1Nn !
Bitte closen
08/11/2012, 11:04
#5
elite*gold: 0
Join Date: Sep 2007
Posts: 266
Received Thanks: 32
Quote:
Originally Posted by
kissein
PHP Code:
<?php
if(isset( $_POST [ 'submit' ])){
$name = $_POST [ 'name' ];
$plz = $_POST [ 'plz' ];
$ort = $_POST [ 'ort' ];
$strasse = $_POST [ 'strasse' ];
$hausnummer = $_POST [ 'hausnummer' ];
$mail = $_POST [ 'mail' ];
$bestellnummern = $_POST [ 'bestellnummern' ];
$sonstige = $_POST [ 'sonstige' ];
echo $name . " " . $plz . " " . $ort . " " . $strasse . " " . $hausnummer . " " . $mail . " " . $bestellnummern . " " . $sonstige ;
//An wen soll die mail gehen
$to = " " ;
//betreff der mail
$subject = $mail . " hat etwas bestellt" ;
//inhalt der mail
$message = '
***************************************\r\n
Personalien:\r\n
name: ' . $name . '\r\n
plz: ' . $name . '\r\n
ort: ' . $name . '\r\n
strasse/hausnummer: ' . $strasse . '/' . $hausnummer . '\r\n
mail: ' . $mail . '\r\n
***************************************\r\n
bestellnr:\r\n
' . $bestellnummern . '\r\n
***************************************\r\n
sonstiges:\r\n
' . $sonstige . '\r\n
***************************************\r\n
' ;
//optionale headerangaben
$headers = 'MIME-Version: 1.0' . "\r\n" ;
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n" ; //charset=utf-8 falls das ganz international werden sollte...
$headers .= 'To: Dave <' . $to . '>' . "\r\n" ;
$headers .= 'From: ' . $name . ' <' . $mail . '>' . "\r\n" ;
//und das ganze senden
mail ( $to , $subject , $message , $headers );
}
HTML Code:
<form action="auslesen.php" method="POST" >
<input type="text" class="textfeld" name="name" value="Vorname,Nachname" onfocus="if(this.value=='Vorname,Nachname') ( this.value='')" onblur="if(this.value=='') ( this.value='Vorname,Nachname')" />
<input type="text" class="textfeld" name="plz" value="PLZ" onfocus="if(this.value='PLZ') ( this.value='')" onblur="if(this.value=='') ( this.value='PLZ')" />
<input type="text" class="textfeld" name="ort" value="Wohnort" onfocus="if(this.value='Wohnort') ( this.value='')" onblur="if(this.value=='') ( this.value='Wohnort')" />
<input type="text" class="textfeld" name="strasse" value="Straß e" onfocus="if(this.value='Straß e') ( this.value='')" onblur="if(this.value=='') ( this.value='Straß e')" />
<input type="text" class="textfeld" name="hausnummer" value="Hausnummer" onfocus="if(this.value='Hausnummer') ( this.value='')" onblur="if(this.value=='') ( this.value='Hausnummer')" />
<input type="text" class="textfeld" name="mail" value="E-Mail Adresse" onfocus="if(this.value='E-Mail Adresse') ( this.value='')" onblur="if(this.value=='') ( this.value='E-Mail Adresse')" />
<br /> <label for="bestellnummern" > Bestellnummern:</label>
<textarea name="bestellnummern" rows="10" > </textarea>
<br /> <label for="textarea" > Sonstige Bemerkungen:</label>
<textarea name="sonstige" rows="6" > </textarea>
<input type="submit" class="submit" name="submit" value="Abschicken" />
</form>
ohje ohjee
wenn man das in einen bestellformulae benutzen soll na dann gute nacht
08/11/2012, 12:16
#6
elite*gold: 35
Join Date: May 2011
Posts: 3,757
Received Thanks: 486
Mir hat's geholfen, von daher kann, wie schon erwähnt, geclosed werden!
Btw. Habe das \r\n durch <br /> ersetzt (Der Header in der Mail kam sonst falsch an) und noch ein Echo hinzugefügt (Danke für Ihre Bestellung!).
08/11/2012, 15:19
#7
elite*gold: 0
Join Date: Sep 2005
Posts: 427
Received Thanks: 87
Quote:
Originally Posted by
.Dave'
Mir hat's geholfen, von daher kann, wie schon erwähnt, geclosed werden!
Btw. Habe das \r\n durch <br /> ersetzt (Der Header in der Mail kam sonst falsch an) und noch ein Echo hinzugefügt (Danke für Ihre Bestellung!).
Ist abhängig davon ob die mail als Plaintext oder HTML gesendet wird.
Quote:
ohje ohjee wenn man das in einen bestellformulae benutzen soll na dann gute nacht
das letztemal als ich security und einfache regeln mit angesprochen habe ist der thread zu einem securitystandard thread mutiert. wollte ich dem OP nicht antun
08/11/2012, 20:27
#8
elite*gold: 0
Join Date: Sep 2007
Posts: 266
Received Thanks: 32
Quote:
Originally Posted by
.Dave'
Mir hat's geholfen, von daher kann, wie schon erwähnt, geclosed werden!
Btw. Habe das \r\n durch <br /> ersetzt (Der Header in der Mail kam sonst falsch an) und noch ein Echo hinzugefügt (Danke für Ihre Bestellung!).
wenn dir das geholfen hat dann gib mir die seite wo du das reinhast... und kuck was ich damit anstelle...
08/11/2012, 20:32
#9
elite*gold: 0
Join Date: May 2008
Posts: 1,222
Received Thanks: 500
Quote:
Originally Posted by
playa18
wenn dir das geholfen hat dann gib mir die seite wo du das reinhast... und kuck was ich damit anstelle...
Es reicht ne einfache Sicherung, denn wenn wer Spammen will, dann schafft ers auch :>
08/11/2012, 23:14
#10
elite*gold: 0
Join Date: Sep 2007
Posts: 266
Received Thanks: 32
Quote:
Originally Posted by
boxxiebabee
Es reicht ne einfache Sicherung, denn wenn wer Spammen will, dann schafft ers auch :>
es geht nicht nur ums spammen... da kann man mehr dinge anstellen
08/12/2012, 11:42
#11
elite*gold: 35
Join Date: May 2011
Posts: 3,757
Received Thanks: 486
Bei meinen Shop/Meiner Webseite hat es keinen Zweck zu hacken oder zu spammen.
Wer Spaß dran hat, soll's machen. :-)
08/12/2012, 12:35
#12
elite*gold: 0
Join Date: Sep 2007
Posts: 266
Received Thanks: 32
Quote:
Originally Posted by
.Dave'
Bei meinen Shop/Meiner Webseite hat es keinen Zweck zu hacken oder zu spammen.
Wer Spaß dran hat, soll's machen. :-)
wenn du meinst dann mach weiter so
...
08/12/2012, 17:36
#13
elite*gold: 203
Join Date: Sep 2007
Posts: 732
Received Thanks: 190
Quote:
Originally Posted by
.Dave'
Bei meinen Shop/Meiner Webseite hat es keinen Zweck zu hacken oder zu spammen.
Wer Spaß dran hat, soll's machen. :-)
Ich seh es genauso wie playa18, denn Sicherheit ist das A und O im Programmieren. Ich weiss nicht, was du mit deiner Seite machen willst, aber wenn du diese online stellst, mit dem Zweck, dass dies jemand benutzt, dann würde ich lieber ein wenig vorsichtig sein. Dies solltest du in all den kommenden Projekten dringend beachten.
Similar Threads
Bestellformular wie?
07/13/2010 - General Art - 7 Replies
Ich habe es Gegoogelt nur nicht gefunden <.< Undzwar suche ich ein Tut wie man ein Bestellformular mit Ps5 macht bitte um Schnelle hilfe...
Wer wissen will why? Ich mache eine Verkaufsseite auf... Wo jeder Kostenlos seine Wahre präsentieren kann!
All times are GMT +1. The time now is 19:55 .