Maissalat
Moooin, ich habe ein Problem mit meinem Kontaktformular. Ich möchte, dass der Betreff und die Email-Adresse als Optional eingestellt sind - hier sind sie aktuell noch Pflichtangaben. Ich habe irgendwas versucht, Teile des Codes rausgenommen, aber dann wird keine Mail an mich verschickt.
Könnt ihr mir weiterhelfen??
Gruß Dennis
Könnt ihr mir weiterhelfen??
Code:
<?php
// *** Einstellungen ***
$mail_to = 'lustig@mehl.de'; // Ihre Mailadresse (Empfängeradresse)
// #############################################################################
$from_name=GetParam('fromname');
$from_mail=strtolower(GetParam('frommail'));
$mail_subject=GetParam('mailsubject');
$mail_text=GetParam('mailtext');
$send=GetParam('s');
$err_text='';
if(trim($from_name)=='') $err_text.='Name:<br>';
if(trim($from_mail)=='')
$err_text.='Email:<br>';
else
if(!preg_match('/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,6})$/i',$from_mail))
$err_text.='Bitte geben Sie eine gültige E-Mail-Adresse an.<br>';
if(trim($mail_subject)=='') $err_text.='Bitte geben Sie einen Betreff ein.<br>';
if(trim($mail_text)=='') $err_text.='Bitte geben Sie einen Nachrichtentext ein.<br>';
$from_name=str_replace(chr(34),"''",$from_name);
$mail_subject=str_replace(chr(34),"''",$mail_subject);
$from_name=stripslashes($from_name);
$from_mail=stripslashes($from_mail);
$mail_subject=stripslashes($mail_subject);
$mail_text=stripslashes($mail_text);
if (($send == '1') && ($err_text != '')) {
echo '<p><big><b>Fehler:</b></big><br>';
echo $err_text.'</p>';
}
if (($send != '1') || ($err_text != '')) {
?>
<form action="<?=GetParam('PHP_SELF','S')?>" method="post">
<table border=0 cellspacing=2 cellpadding=0 width=100%>
<tr>
<td nowrap align=right>Name:</td><td> </td>
<td width=100%><input type="text" name="fromname" size=50 maxlength=120 value="<?=$from_name?>"></td></tr>
<tr>
<td nowrap align=right>Email:</td><td></td>
<td width=100%><input type="text" name="frommail" size=50 maxlength=120 value="<?=$from_mail?>"></td></tr>
<tr>
<td nowrap align=right>Homepage:</td><td></td>
<td width=100%><input type="text" name="mailsubject" size=50 maxlength=120 value="<?=$mail_subject?>"></td></tr>
<tr>
<td nowrap align=right valign=top>Eintrag:<br></td><td></td>
<td width=100%><textarea cols=40 rows=10 name="mailtext"><?=$mail_text?></textarea></td></tr>
<tr><td></td><td></td><td>
<input type="hidden" value="1" name="s">
<input type="submit" value="Abschicken" name="submit">
</td></tr>
</table>
</form>
<?php
} else {
$header="From: $from_name <$from_mail>\n";
$header.="Reply-To: $from_mail\n";
$header.="X-Mailer: PHP-ContactForm-Script\n";
$header.="Content-Type: text/plain";
$mail_date=gmdate('D, d M Y H:i:s').' +0000';
$send=0;
if(@mail($mail_to,$mail_subject,$mail_text,$header))
{
echo "<p><b>Die Nachricht wurde erfolgreich abgesendet.</b></p>";
echo "<p><a href=\"".GetParam('PHP_SELF','S')."?from_name=$from_name&from_mail=$from_mail\">Zurück zum Formular</a></p>";
}else{
echo "<p><b>Beim Versenden der Nachricht ist ein Fehler aufgetreten!</b></p>";
echo "<p><a href=\"".GetParam('PHP_SELF','S')."?from_name=$from_name&from_mail=$from_mail&mail_subject=$mail_subject&mail_text=";
echo urlencode($mail_text)."\">Zurück zum Formular</a></p>";
}
}
function GetParam($ParamName, $Method = 'P', $DefaultValue = '') {
if ($Method == 'P') {
if (isset($_POST[$ParamName])) return $_POST[$ParamName]; else return $DefaultValue;
} else if ($Method == 'G') {
if (isset($_GET[$ParamName])) return $_GET[$ParamName]; else return $DefaultValue;
} else if ($Method == 'S') {
if (isset($_SERVER[$ParamName])) return $_SERVER[$ParamName]; else return $DefaultValue;
}
}
?>