Antworten auf deine Fragen:
Neues Thema erstellen

Antworten zum Thema „PHP Kontaktformular“

firewoman

Nicht mehr ganz neu hier

Hallo ,

nachdem ich gestern verzweifelt versucht habe ein Kontaktformular über
den Formularchef zu erstellen und mir dringend geraten wurde dieses mit PHP zu lösen habe ich mich heute an die Arbeit gemacht und mit Hilfe der Tutorials ein Script nachgebaut.
Die Seite sieht wunderbar aus nur wie soll ich nun die HTML Seite mit der PHP Seite verlinken?
Sonst kann das Script ja nicht aufgerufen werden.
Ich danke Euch schonm mal.
Firewoman
 

clark_039

Noch nicht viel geschrieben

AW: PHP Kontaktformular

Hey, also normalerweise macht man das in dem Formular Tag, wenn es das ist was du meinst

<form action="phpdatei.php">

MFG clark_039
 

firewoman

Nicht mehr ganz neu hier

AW: PHP Kontaktformular

Nun habe ich es verlinkt, leider kommt immer eine Fehlermeldung das die E-Mail Adresse ungültig ist.Kann jemand einen Fehler entdecken?
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Unbenanntes Dokument</title>
</head>

<body>
<?
$ihremail = "***";
$error = "";
$name = $_POST['name'];
$email = $_POST['email'];
$betreff = $_POST['betreff'];
$text = $_POST['text'];
$Submit = $_POST['Submit'];
function mailcheck($mail) {
$mail = eregi("^[a-z0-9]+([-_.]?[a-z0-9])
+@[a-z0-9]+([-_.]?[a-z0-9])+.[a-z]{2,4}", $mail);
return $mail;
}
if(empty($name)) $error .= "<li>Sie haben keinen Namen angegeben.</li>";
if(empty($email)) $error .= "<li>Sie haben keine E-Mail angegeben.</li>";
if(!mailcheck($email)) $error .= "<li>Ihre E-Mail ist ungültig</li>";
if(empty($betreff)) $error .= "<li>Es wurde kein Betreff ausgewählt.</li>";
if(empty($text)) $error .= "<li>Sie haben kein Text angegeben.</li>";
if(empty($error) && $Submit == "Absenden" ) {
$nachricht = "Email von ".$name."nn".
"Name: ".$name."n".
"Email: ".$email."nn".
"Betreff: ".$betreff."n".
"Nachricht: ".$text;
$subject = "$betreff";
$nachricht1 = $email . "nn" . $nachricht;
mail($ihremail,$subject,$nachricht1,"FROM: $email");
}
if(empty($error)) {
echo "<b>Nachricht wurde erfolgtreich verschickt</b><br>
<ul>
<li>Name: $name</li>
<li>Email: $email</li>
<li>Betreff: $betreff</li>
<li>Nachricht: $text</li>
</ul>";
} else {
echo "Folgender Fehler ist aufgetreten<br><p>Ihre Nachricht konnte nicht gesendet werden:<ul>$error</ul></p>";
}
?>
</body>
</html>
 

clark_039

Noch nicht viel geschrieben

AW: PHP Kontaktformular

Also du könntest es auch in einer Seite lösen, du hast dein Formular und dann fügst du darunter den PHP Quelltest ein


PHP:
 Formular



<?php
if (isset($_POST['senden']))
{


$name = htmlentities($_POST['name']);
$email = htmlentities($_POST['email']);
$betreff = htmlentities($_POST['betreff']);
$text = htmlentities($_POST['text']);

}
 else {

if (isset($_POST['senden'])) {
$name = htmlentities($_POST['name']);
$email = htmlentities($_POST['email']);
$betreff = htmlentities($_POST['betreff']);
$text = htmlentities($_POST['text']);
if (empty($name) || empty($email) || empty($betreff) || empty($text))
{
echo "Sie haben nicht alles korrekt ausgefüllt.";
} else {
$to = "deine@mail.de";
$subject = $betreff;
$msg = $text.$name.$email;
mail($to, $subject, $msg);
$none = "none";
echo "Ihre E-Mail wurde abgeschickt.";
}
}
}
?>

So sollte es klappen
 

Antr4ks

Nicht mehr ganz neu hier

AW: PHP Kontaktformular

Nun habe ich es verlinkt, leider kommt immer eine Fehlermeldung das die E-Mail Adresse ungültig ist.

Nun, da geh ich mal davon aus, dass deine Abfrage, ob die Email-Adresse gültig ist, nicht ganz richtig funktioniert. Leider bin ich noch nicht so Affin mit regulären Ausdrücken (ereg) und kann dir jetzt auch nicht sagen, ob da der Fehler liegt. Aber du kannst den Teil ja erstmal weglassen und so testen ob dein Script funktioniert.
 

K-Dawg

********

AW: PHP Kontaktformular

Abgesehen davon, dass dieser Code in keinster weise zur benutzung auf einem Live Server zu empfehlen ist, Dein Fehler liegt in diesem Bereich:
$ihremail = "***";
$error = "";
$name = $_POST['name'];
$email = $_POST['email'];
$betreff = $_POST['betreff'];
$text = $_POST['text'];
$Submit = $_POST['Submit'];
function mailcheck($mail) {
$mail = eregi("^[a-z0-9]+([-_.]?[a-z0-9])
+@[a-z0-9]+([-_.]?[a-z0-9])+.[a-z]{2,4}", $mail);
return $mail;
Du hast keine Variable namens $mail definiert mit dem zu untersuchende Stellen.

Sprich, setze da $email rein statt $mail.

dennoch ist dieser Code nicht zu empfehlen da nicht Sicher.

Gruß
 
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

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
175.157
Beiträge
2.581.867
Mitglieder
67.223
Neuestes Mitglied
Desiree
Oben