der Quelltext der kontakt.html (mailer.php liegt in einem parallelen Ordner zum html-Ordner, in dem sich die kontakt.html befindet):
<form action="../form/mailer.php" method="post">
<p><label for="name">Name:</label><br />
<input type="text" name="name" id="name" value="" /><br /></p>
<p><label for="emailad">Email:</label><br />
<input type="text" name="emailad" id="emailad" value="" /><br /></p>
<p><label for="message">Nachricht:</label><br />
<textarea cols="40" rows="6" name="text" id="text"></textarea><br /></p>
<p class="lastformitem"><input type="submit" name="send" class="button" value="Weg damit!" /></p>
</form>
Und hier die mailer.php:
<?php
#
# patShaping Form E-Mail 2.3.5a
#
# Versenden einer E-Mail, die ueber ein Kontaktformular
# geschrieben wurde.
#
# Autor: Patrick Canterino <patrick@patshaping.de>
# Letzte Aenderung: 14.4.2007
#
#
# Einstellungen, Beschreibung siehe readme.txt
$mailto = 'feedback@beispiel.de';
$default_subject = 'Feedback';
$friendly_sender = 1;
$show_starttext = 1;
$line_break = 0;
$add_header = 1;
# Ende Einstellungen
$emailad = formdata('emailad');
$name = formdata('name');
$subject = formdata('subject');
$text = formdata('text');
# Pruefen, ob alle Formular-Felder ausgefuellt wurden
if(!$name && !$emailad && !$subject && !$text) showhtml('include/no_data.inc');
if(!$name) showhtml('include/no_name.inc');
if(!$emailad) showhtml('include/no_emailad.inc');
if(!$text) showhtml('include/no_text.inc');
if(!$subject) $subject = $default_subject;
# Betreff pruefen und ihn ggf. mit Quoted-Printable codieren (IMAP-Modul muss vorhanden sein)
if(function_exists('imap_8bit') && preg_match("/[\200-\377]/",$subject))
{
$subject_tmp = imap_8bit($subject);
if($subject_tmp != $subject)
{
$subject = str_replace(' ','_',$subject_tmp);
$subject = str_replace('"','=22',$subject);
$subject = "=?iso-8859-1?Q?$subject?=";
$subject = str_replace("=\015\012","?=\015\012 =?iso-8859-1?Q?",$subject);
}
}
# Pruefen, ob eingegebene E-Mail-Adresse (im Internet) gueltig ist
# Danke an "ich" aus dem SELFHTML Forum fuer die Muehe
if(!preg_match('/^([a-z0-9]+([\.]?|[-]?|[_]?)?)*([a-z0-9]+([\.]?[_]?)?)@([a-z0-9]+([\.]?|[-]?)?)*[a-z0-9]+\.{1}[a-z]{2,6}$/i',$emailad)) showhtml('include/invalid_emailad.inc');
# Datum und Zeit bestimmen
if(function_exists('date_default_timezone_set')) date_default_timezone_set('Europe/Berlin');
$zeit = getdate();
# Wochentag herausfinden
$wochentage = array('Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag');
$wochentag = $wochentage[$zeit['wday']];
# Datum und Uhrzeit formatieren
$datum = $zeit['mday'].'.'.$zeit['mon'].'.'.$zeit['year'];
$uhrzeit = sprintf('%02d:%02d:%02d',$zeit['hours'],$zeit['minutes'],$zeit['seconds']);
# E-Mail zusammensetzen
if($show_starttext) $starttext = "$name ($emailad) schrieb am $wochentag, dem $datum, um $uhrzeit:\n\n";
$mailtext = $starttext.$text;
if($line_break && is_int($line_break)) $mailtext = wordwrap($mailtext,$line_break);
$mailtext = preg_replace("/\015\012|\012|\015/","\n",$mailtext);
# Header der E-Mail
if($friendly_sender) $header = "From: $emailad\n";
if($add_header)
{
if(!$friendly_sender) $header .= "Reply-To: $emailad\n";
$header .= "Content-Type: text/plain; charset=\"iso-8859-1\"\n";
$header .= "Content-Transfer-Encoding: 8bit\n";
$header .= "MIME-Version: 1.0\n";
$header .= "X-Mailer: patShaping Form E-Mail 2.3.5a\n";
$header .= "X-Sender-IP: [".$HTTP_SERVER_VARS['REMOTE_ADDR']."]";
}
else $header .= "Reply-To: $emailad";
# E-Mail versenden
# Wenn die E-Mail nicht versendet werden kann, wird eine Fehlermeldung ausgegeben
@mail($mailto,$subject,$mailtext,$header) || showhtml('include/send_error.inc');
showhtml('include/mail_sent.inc');
# E-Mail wurde versendet und Erfolgsmeldung ausgegeben
# formdata()
#
# Formulardaten bei deaktiviertem register_globals auslesen
#
# Parameter: Name des Formularfeldes
#
# Rueckgabe: Inhalt des Formularfeldes (String oder Array)
#
# Bemerkungen: - Wenn der HTTP-Zugriff nicht POST oder GET ist,
# wird nichts zurueckgegeben.
# - Codierende Backslashes werden automatisch entfernt
function formdata($param)
{
switch($HTTP_SERVER_VARS['REQUEST_METHOD'])
{
case 'GET':
if(isset($HTTP_GET_VARS[$param]))
{
$value = $HTTP_GET_VARS[$param];
break;
}
else return null;
case 'POST':
if(isset($HTTP_POST_VARS[$param]))
{
$value = $HTTP_POST_VARS[$param];
break;
}
else return null;
default:
return null;
}
if(get_magic_quotes_gpc())
{
if(is_array($value)) return array_map('stripslashes',$value);
else return stripslashes($value);
}
else return $value;
}
# showhtml()
#
# HTML-Datei anzeigen und Script beenden
#
# Parameter: HTML-Datei
function showhtml($file)
{
readfile($file);
exit;
}
#
### Ende ###
?>
Ich bin echt am verzweifeln, die einzige Ausgabe, die ich bekomme, ist diese:
Letzte Aenderung: 14.4.2007 # # # Einstellungen, Beschreibung siehe readme.txt $mailto = 'feedback@beispiel.de'; $default_subject = 'Feedback'; $friendly_sender = 1; $show_starttext = 1; $line_break = 0; $add_header = 1; # Ende Einstellungen $emailad = formdata('emailad'); $name = formdata('name'); $subject = formdata('subject'); $text = formdata('text'); # Pruefen, ob alle Formular-Felder ausgefuellt wurden if(!$name && !$emailad && !$subject && !$text) showhtml('include/no_data.inc'); if(!$name) showhtml('include/no_name.inc'); if(!$emailad) showhtml('include/no_emailad.inc'); if(!$text) showhtml('include/no_text.inc'); if(!$subject) $subject = $default_subject; # Betreff pruefen und ihn ggf. mit Quoted-Printable codieren (IMAP-Modul muss vorhanden sein) if(function_exists('imap_8bit') && preg_match("/[\200-\377]/",$subject)) { $subject_tmp = imap_8bit($subject); if($subject_tmp != $subject) { $subject = str_replace(' ','_',$subject_tmp); $subject = str_replace('"','=22',$subject); $subject = "=?iso-8859-1?Q?$subject?="; $subject = str_replace("=\015\012","?=\015\012 =?iso-8859-1?Q?",$subject); } } # Pruefen, ob eingegebene E-Mail-Adresse (im Internet) gueltig ist # Danke an "ich" aus dem SELFHTML Forum fuer die Muehe if(!preg_match('/^([a-z0-9]+([.]?|[-]?|[_]?)?)*([a-z0-9]+([.]?[_]?)?)@([a-z0-9]+([.]?|[-]?)?)*[a-z0-9]+.{1}[a-z]{2,6}$/i',$emailad)) showhtml('include/invalid_emailad.inc'); # Datum und Zeit bestimmen if(function_exists('date_default_timezone_set')) date_default_timezone_set('Europe/Berlin'); $zeit = getdate(); # Wochentag herausfinden $wochentage = array('Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'); $wochentag = $wochentage[$zeit['wday']]; # Datum und Uhrzeit formatieren $datum = $zeit['mday'].'.'.$zeit['mon'].'.'.$zeit['year']; $uhrzeit = sprintf('%02d:%02d:%02d',$zeit['hours'],$zeit['minutes'],$zeit['seconds']); # E-Mail zusammensetzen if($show_starttext) $starttext = "$name ($emailad) schrieb am $wochentag, dem $datum, um $uhrzeit:\n\n"; $mailtext = $starttext.$text; if($line_break && is_int($line_break)) $mailtext = wordwrap($mailtext,$line_break); $mailtext = preg_replace("/\015\012|\012|\015/","\n",$mailtext); # Header der E-Mail if($friendly_sender) $header = "From: $emailad\n"; if($add_header) { if(!$friendly_sender) $header .= "Reply-To: $emailad\n"; $header .= "Content-Type: text/plain; charset="iso-8859-1"\n"; $header .= "Content-Transfer-Encoding: 8bit\n"; $header .= "MIME-Version: 1.0\n"; $header .= "X-Mailer: patShaping Form E-Mail 2.3.5a\n"; $header .= "X-Sender-IP: [".$HTTP_SERVER_VARS['REMOTE_ADDR']."]"; } else $header .= "Reply-To: $emailad"; # E-Mail versenden # Wenn die E-Mail nicht versendet werden kann, wird eine Fehlermeldung ausgegeben @mail($mailto,$subject,$mailtext,$header) || showhtml('include/send_error.inc'); showhtml('include/mail_sent.inc'); # E-Mail wurde versendet und Erfolgsmeldung ausgegeben # formdata() # # Formulardaten bei deaktiviertem register_globals auslesen # # Parameter: Name des Formularfeldes # # Rueckgabe: Inhalt des Formularfeldes (String oder Array) # # Bemerkungen: - Wenn der HTTP-Zugriff nicht POST oder GET ist, # wird nichts zurueckgegeben. # - Codierende Backslashes werden automatisch entfernt function formdata($param) { switch($HTTP_SERVER_VARS['REQUEST_METHOD']) { case 'GET': if(isset($HTTP_GET_VARS[$param])) { $value = $HTTP_GET_VARS[$param]; break; } else return null; case 'POST': if(isset($HTTP_POST_VARS[$param])) { $value = $HTTP_POST_VARS[$param]; break; } else return null; default: return null; } if(get_magic_quotes_gpc()) { if(is_array($value)) return array_map('stripslashes',$value); else return stripslashes($value); } else return $value; } # showhtml() # # HTML-Datei anzeigen und Script beenden # # Parameter: HTML-Datei function showhtml($file) { readfile($file); exit; } # ### Ende ### ?>
Keine Formularfelder - nix außer dem Vorhergehenden.
Ich hoffe, ihr könnt mir helfen...