Kontaktformular

Hallo ihr,

ich bin gerade dabei ein Kontaktformular zu schreiben.
Und ich will, das es mir das alles sendet, was eingegeben wurde, klar…
Ich bin so weit:
[php]

Test Bestellformular

Bestellformular

Vorname:
Nachname:
Straße / Hausnummer:
PLZ / Ort:
Land:
Telefon:
Email-Adresse:
Paket:
Wunsch-Domain:
Bemerkung:
<?php $mailbody = array( $Vorname = $_POST['Vorname'], $Nachname = $_POST['Nachnamename'], $Strasse = $_POST['Strasse'], ); if (!empty($_POST['Vorname'])) { $mailbody = $_POST['Vorname']; $Email = $_POST['Email']; if (@mail("kevin@kevinhartmann.de", "Bestellung", $mailbody, "From: $Email)) ?> [/php] Nun, das problem ist, er mekert folgendes: http://www.kevinhartmann.de/Reseller/bestellung.php

was heißt das?
weil zeile 70 ist bei mir im editor ??!

würde mich auf eine antwort freuen…

Moderator-Edit - Aktion: PHP-Tags hinzugefügt (Artemis)

Guck dir jetzt den Code noch einmal an.
Außerdem muss man eine If-Abfrage auch schließen.

also heißt das, dass du was geändert hast?

[php]

Test Bestellformular

Bestellformular

Vorname:
Nachname:
Straße / Hausnummer:
PLZ / Ort:
Land:
Telefon:
Email-Adresse:
Paket:
Wunsch-Domain:
Bemerkung:
<?php $mailbody = array( $Vorname = $_POST['Vorname'], $Nachname = $_POST['Nachnamename'], $Strasse = $_POST['Strasse'], ); if (!empty($_POST['Vorname'])) { $mailbody = $_POST['Vorname']; $Email = $_POST['Email']; @mail("kevin@kevinhartmann.de", "Bestellung", $mailbody, "From: ".$Email); } ?> [/php] müsste so gehen

ja, danke, geht.
aber wenn ich jetzt des formular ausfülle, und dann abschicke, dann in mein email schaue, ist eine da, aber nur mit dem vornamen drauf…??

Das [php]$mailbody = array(
$Vorname = $_POST[‚Vorname‘],
$Nachname = $_POST[‚Nachnamename‘],
$Strasse = $_POST[‚Strasse‘],
);[/php] ist allerdings voellig ueberfluessig, da $mailbody so oder so von „$_POST[„vorname“]“ ueberschrieben wird.

/E: Kein wunder, du erwaehnst im PHP-Code nicht mit einem Wort die Werte von den ganzen Input-Tags.

[php]

Test Bestellformular

Bestellformular

Vorname:
Nachname:
Straße / Hausnummer:
PLZ / Ort:
Land:
Telefon:
Email-Adresse:
Paket:
Wunsch-Domain:
Bemerkung:
<?php if (!empty($_POST['Vorname']) AND !empty($_POST['Nachname']) AND !empty($_POST['Strasse'])) { $mailbody = "Vorname : ".$_POST['Vorname']; $mailbody.= "Nachname : ".$_POST['nachname']; $mailbody.= "Strasse : ".$_POST['Strasse'];

$Email = $_POST[‚Email‘];
@mail(„kevin@kevinhartmann.de“, „Bestellung“, $mailbody, "From: ".$Email);
}
?>

[/php]

aha, habe es mir auch gerade nochmal angeschaut und ja, habe es mir gedacht

mit was kriege ich es, dass es alles sendet, sprich den array $mailbody?

Mach das doch einfach so ?!

[php]

<?php if (!empty($_POST['Vorname']) AND !empty($_POST['Nachname']) AND !empty($_POST['Strasse'])) { $mailbody = "Vorname : ".$_POST['Vorname']; $mailbody.= " Nachname : ".$_POST['nachname']; $mailbody.= " Strasse : ".$_POST['Strasse']; mail("kevin@kevinhartmann.de", "Bestellung", $mailbody, "From: ".$_POST['Email']); } ?>

[/php]

habe das jetzt auf alle eingabefelder gemacht:
[php]

<?php if (!empty($_POST['Vorname']) AND !empty($_POST['Nachname']) AND !empty($_POST['Strasse']) AND !empty($_POST['Ort']) AND !empty($_POST['Land']) AND !empty($_POST['Email']) AND !empty($_POST['Paket']) AND !empty($_POST['Domain']) AND !empty($_POST['Bemerkung'])) { $mailbody = " Vorname : ".$_POST['Vorname']; $mailbody.= " Nachname : ".$_POST['Nachname']; $mailbody.= " Strasse : ".$_POST['Strasse']; $mailbody.= " Ort : ".$_POST['Ort']; $mailbody.= " Land : ".$_POST['Land']; $mailbody.= " Email : ".$_POST['Email']; $mailbody.= " Paket : ".$_POST['Paket']; $mailbody.= " Domain : ".$_POST['Domain']; $mailbody.= " Bemerkung : ".$_POST['Bemerkung']; mail("kevin@kevinhartmann.de", "Bestellung", $mailbody, "From: ".$_POST['Email']); } ?>

[/php]
aber wenn ichs abschicke bekomme ich bloß die variable $Bemerkung
:frowning:

oh, ich glaub da hab ich mich vertan … musste mal so probiere ^^ ich weiß es nicht mehr genau

[PHP]

<?php if (!empty($_POST['Vorname']) AND !empty($_POST['Nachname']) AND !empty($_POST['Strasse']) AND !empty($_POST['Ort']) AND !empty($_POST['Land']) AND !empty($_POST['Email']) AND !empty($_POST['Paket']) AND !empty($_POST['Domain']) AND !empty($_POST['Bemerkung'])) { $mailbody = " Vorname : ".$_POST['Vorname'].""; $mailbody.= " Nachname : ".$_POST['Nachname'].""; $mailbody.= " Strasse : ".$_POST['Strasse'].""; $mailbody.= " Ort : ".$_POST['Ort'].""; $mailbody.= " Land : ".$_POST['Land'].""; $mailbody.= " Email : ".$_POST['Email'].""; $mailbody.= " Paket : ".$_POST['Paket'].""; $mailbody.= " Domain : ".$_POST['Domain'].""; $mailbody.= " Bemerkung : ".$_POST['Bemerkung'].""; mail("kevin@kevinhartmann.de", "Bestellung", $mailbody, "From: ".$_POST['Email']); } ?>

[/PHP]

jo danke, so gehts!

wenn ich jetzt zum beispiel bei paket so mit value machen muss, muss ich dann noch was ändern, also ich mein im, php sendteil ? ne oder

Ich verstehe die Frage nicht ^^

musst du nicht, werde mich dann wieder melden, wenn es nicht klappt… lol
also, ich habe jetzt noch echo und else eingefügt, dass man weiß ob ging oder nicht…
aber geht nicht:
[php]

<?php if (!empty($_POST['Vorname']) AND !empty($_POST['Nachname']) AND !empty($_POST['Strasse']) AND !empty($_POST['Ort']) AND !empty($_POST['Land']) AND !empty($_POST['Email']) AND !empty($_POST['Paket']) AND !empty($_POST['Domain']) AND !empty($_POST['Bemerkung'])) { $mailbody = " Vorname : ".$_POST['Vorname'].""; $mailbody.= " Nachname : ".$_POST['Nachname'].""; $mailbody.= " Strasse : ".$_POST['Strasse'].""; $mailbody.= " Ort : ".$_POST['Ort'].""; $mailbody.= " Land : ".$_POST['Land'].""; $mailbody.= " Email : ".$_POST['Email'].""; $mailbody.= " Paket : ".$_POST['Paket'].""; $mailbody.= " Domain : ".$_POST['Domain'].""; $mailbody.= " Bemerkung : ".$_POST['Bemerkung'].""; mail("kevin@kevinhartmann.de", "Bestellung", $mailbody, "From: ".$_POST['Email']);{ echo "

Danke! Die Bestellung wurde abgeschickt..

" } else "

Leider hat es nicht geklappt..

" } } ?>

[/php]
und wenn du jetzt schaust, www.kevinhartmann.de/Reseller/bestellung.php , dann zeigt es an, fehler on line 84 und line 84 ist } bei echo…

Was mache ich falsch :-))?

Da fehlt ein ; am ende des echo befehls

Ausserdem braucht auch der else-teil eine geschwundene Klammer, und du darfst else nicht mit echo verwechseln!

[php]<?php
if (!empty($_POST[‚Vorname‘]) AND
!empty($_POST[‚Nachname‘]) AND
!empty($_POST[‚Strasse‘]) AND
!empty($_POST[‚Ort‘]) AND
!empty($_POST[‚Land‘]) AND
!empty($_POST[‚Email‘]) AND
!empty($_POST[‚Paket‘]) AND
!empty($_POST[‚Domain‘]) AND
!empty($_POST[‚Bemerkung‘]))
{
$mailbody = " Vorname : „.$_POST[‚Vorname‘].“„;
$mailbody.= " Nachname : „.$_POST[‚Nachname‘].““;
$mailbody.= " Strasse : „.$_POST[‚Strasse‘].“„;
$mailbody.= " Ort : „.$_POST[‚Ort‘].““;
$mailbody.= " Land : „.$_POST[‚Land‘].“„;
$mailbody.= " Email : „.$_POST[‚Email‘].““;
$mailbody.= " Paket : „.$_POST[‚Paket‘].“„;
$mailbody.= " Domain : „.$_POST[‚Domain‘].““;
$mailbody.= " Bemerkung : „.$_POST[‚Bemerkung‘].“";

mail(„kevin@kevinhartmann.de“,
„Bestellung“,
$mailbody,
"From: ".$_POST[‚Email‘]);
// ^–Da War ausserdem ne geschwungene
// Klammer, die hat da nichts zu suchen.
echo „

Danke! Die Bestellung wurde abgeschickt…

“;
}
else
{
echo „

Leider hat es nicht geklappt…

“;
}
?> [/php]

da war wohl einer schneller… danke
www.kevinhartmann.de/Reseller/bstellung.php

da zeigts des jetzt gleich unten an, kann ich das ändern, das es am anfang unsichtbar ist?

[php]if(!empty($_POST[„abschicken“])){ //Kann sein, dass es $_POST[„submit“] ist, einfach ausprobieren.
//Hier der gesamte Code, mitsamt der Meldung
} else {
//Hier kann das formular rein, wenn man will, dass es nach abschicken nicht mehr
//sichtbar sein soll.
}[/php]

nein, ich meinte, das es gleich anzeigt, die bestellung konnte nicht gesendet werden. das des weg ist, net des formular… :wink:

oder?

Das ist mir schon klar.

Es geht nur um folgendes:

Wenn das ganze abgeschickt wurde, dann wir zwar dastehen, ob das korrekt/ falsch abgesendet wurde, aber das Kontaktformular ist weg. Wenn du das nicht so haben willst, dann nur den PHP-Code in den TRUE-Teil der Abfrage tun, PHP-Bereich abschliessen und formular normal reintuehn.

so langsam glaube cih, dass du nicht versuchst du verstehen, sondern einfach nur den Code irgendwie zusammenmischt :?