Hallo,
ja, das geht. Du braucht dafür nur ein PHP-schript und einen
PHP unterstützten Server.
Das ganze funktioniert mit einem Formmailer.
Gib das mal in die Suche ein. Dann wirst du fündig..!!
Folgendes Script ist für dieses Forum von Steffen Kamper gemacht worden.
Kopiere es mal in die Zwischenablage und dann in DW in eine leere
Codeansichtseite.
Dann passt Du das Script da wo es nötig ist, an.
Dann speicherst Du diese Seite als formmailer.php
Dann hochladen und ausprobieren.
Falls es nicht funktionieren sollte, unterstützt dein Webspace kein PHP.
PHP-Code:
<?php
/*******************************************/
/* formmailer.php */
/* */
/* FORMMAILER mit Reloadsperre */
/* */
/* von Steffen Kamper */
/* erstellt für das Traumprojekt-Forum */
/* */
/*******************************************/
//erstmal Variablen definieren
$pagename="formmailer.php";
$error=$name=$email=$message="";
// an wen geht die Mail ?
$empfaenger="post@blaba.de";
if(isset($_POST['domail'])) {
// es wurde abschicken gedrückt, also erst mal die Felder holen
$name=get_magic_quotes_gpc() ? stripslashes($_POST['name']) : $_POST['name'];
$email=get_magic_quotes_gpc() ? stripslashes($_POST['email']) : $_POST['email'];
//Message setzt sich aus allen Eingaben zusammen
$message=get_magic_quotes_gpc() ? stripslashes($_POST['message']) : $_POST['message'];
//Form-Attacken verhindern (suche nach \r\n oder \n)
if(strpos($name,"\r\n")>0 || strpos($name,"\n")>0) {
DebugAttack(substr($name,strpos($name,"\r\n")));
$name="";
}
if(strpos($email,"\r\n")>0 || strpos($email,"\n")>0) {
DebugAttack(substr($email,strpos($email,"\r\n")));
$email="";
}
// wir setzen einen Flag, um Fehler zu registrieren
$ok=true;
//jetzt werden die Felder überprüft
if (strlen($name)<3) // der Name muss mindestens 3 Zeichen haben
{
$err[0]=true; //Fehler merken
$ok=false; //Fehlerflag setzen
$error.='Bitte geben Sie Ihren Namen an. (mindestens 3 Zeichen)<br>'; // Fehlertext
}
if ( (!(eregi('^[a-z0-9_\.-]+@[a-z0-9_-]+\.[a-z0-9_\.-]+$',$email))) && (strlen($email)>0) || $email=="")
{
//email-Adresse ist ungültig
$err[1]=true;
$ok=false;
$error.='Bitte kontrollieren Sie die angegebene E-Mail-Adresse.<br>';
}
if (strlen($message)<10) // die Message muss mindestens 10 Zeichen haben
{
$err[2]=true; //Fehler merken
$ok=false; //Fehlerflag setzen
$error.='Bitte geben Sie eine Message von mindestens 10 Zeichen ein.<br>'; // Fehlertext
}
// ist alles ok ? dann senden
if($ok)
{
//Mail komponieren
$mailheader="From: formular@domain.de\r\nX-Mailer: PHP/" . phpversion(). "\r\nX-Sender-IP: ".$_SERVER['REMOTE_ADDR']."\r\nContent-Type: text/html; charset=ISO-8859-1;";
$message=nl2br("Name: $name\nEmail: <a href=\"mailto:$email\">$email</a>\n<hr>$message");
$subject="Webseiten-Nachricht vom ".date("d.m.Y");
if (@mail($empfaenger, $subject, $message, $mailheader)) {
//Alles ok, Seite neuladen (Reloadsperre)
header("Location:$pagename?success");
//falls kein Header gesendet werden kann, dann mit javascript
//echo '<script type="text/javascript">document.location.href="'.$pagename.'?success"</script>';
exit;
} else {
$error='<h3>Fehler beim Mailen aufgetreten</h3>';
}
} else {
// Fehler ausgeben
$error='<h3>Fehler bei der Eingabe</h3><p class="error">'.$error.'</p>';
}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Form-Mailer</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
body {background:#fff;}
form {width:600px;}
label {display:block;}
input, textarea {font-size:11px;}
textarea {width:360px;height:240px;}
input.button {border:1px solid #000;background:#ffcc00;margin-top:12px;}
.fehler {border:1px solid red;}
p.error {color:red;}
</style>
</head>
<body>
<h1>
<?php
if($error!="") echo $error;
if(isset($_GET['success'])) {
//Erfolgsnachricht ausgeben
echo '<p>Vielen Dank für Ihre Nachricht. Sie wurde erfolgreich verschickt.</p>';
} else {
// Form ausgeben
?>
</h1>
<form action="<?php echo $pagename;?>" method="post" name="formmailer">
<fieldset><legend></legend>
<label for="name">Name:
<input type="Text" value="<?php echo $name;?>" maxlength="60" size="50" name="name" <?php if(isset($err[0])) echo 'class="fehler"';?>>
</label>
<label for="email">Email-Adresse:
<input type="Text" value="<?php echo $email;?>" maxlength="80" size="50" name="email" <?php if(isset($err[1])) echo 'class="fehler"';?>>
</label>
<label for="comment">Message</label>
<textarea cols="10" rows="10" name="message" <?php if(isset($err[2])) echo 'class="fehler"';?>><?php echo $message;?></textarea>
<input type="reset" class="button" value="zurücksetzen" name="reset">
<input type="submit" class="button" value="abschicken" name="domail">
</fieldset>
</form>
<?php
}
function DebugAttack($s) {
//Hier den Pfad für die Protokolldatei einfügen, wenn kein Protokoll erwünscht ist, einfach auskommentieren
$fp=fopen("/tmp/attack.txt","ab");
fwrite($fp,$s);
fclose($fp);
}
?>
</body>
</html>