Hallo zusammen,
Bin ein absolutes Grinhorn in diesem Forum, brauche aber Hilfe von echten Profis.
Ich bin zu dämlich für das, denke ich manchmal.
Ich habe zwei htm und 1 php script. Auf dem kontakt.htm kommen die Kundendaten rein, danach wird es abgeschickt und es geht zum formmail.php über. Leider kommt nun nur eine leere weisse Seite. Es sollte aber eigentlich das antwort.htm script kommen.
Jungs & Mädels - helft mir, ich dreh langsam aber sicher durch
Was muss ich machen, dass die antwort.htm kommt (Mail funktioniert)
kontakt.htm
HTML
<html>
<head>
<title>First Avenue</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript"><!--
function chkFormular()
{
if(document.Formular.Name.value == "")
{
alert("Bitte Ihren Namen eingeben!");
document.Formular.Name.focus();
return false;
}
if(document.Formular.Vorname.value == "")
{
alert("Bitte Ihren Vornamen eingeben!");
document.Formular.Vorname.focus();
return false;
}
if(document.Formular.Strasse.value == "")
{
alert("Bitte Ihre Strasse eingeben!");
document.Formular.Strasse.focus();
return false;
}
if(document.Formular.PLZ.value == "")
{
alert("Bitte Ihre Postleitzahl eingeben!");
document.Formular.PLZ.focus();
return false;
}
var chkZ = 1;
for(i=0;i<document.Formular.PLZ.value.length;++i)
if(document.Formular.PLZ.value.charAt(i) < "0"
|| document.Formular.PLZ.value.charAt(i) > "9")
chkZ = -1;
if(chkZ == -1)
{
alert("Ihre Postleitzahl ist keine Zahl!");
document.Formular.PLZ.focus();
return false;
}
if(document.Formular.Ort.value == "")
{
alert("Bitte Ihren Wohnort eingeben!");
document.Formular.Ort.focus();
return false;
}
if(document.Formular.email.value == "") {
alert("Bitte Ihre E-Mail-Adresse eingeben!");
document.Formular.email.focus();
return false;
}
if(document.Formular.email.value.indexOf('@') == -1) {
alert("E-Mail-Adresse ist ungueltig!");
document.Formular.email.focus();
return false;
}
if(document.Formular.email.value.indexOf('.') == -1) {
alert("E-Mail-Adresse ist ungueltig!");
document.Formular.email.focus();
return false;
}
if(document.Formular.email.value.indexOf(',') > 0) {
alert("E-Mail-Adresse ist ungueltig!");
document.Formular.email.focus();
return false;
}
if(document.Formular.Alter.value == "")
{
alert("Bitte Ihr Alter eingeben!");
document.Formular.Alter.focus();
return false;
}
}
// -->
</script>
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_reloadPage(init) { //reloads the window if Nav4 resized
if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
function MM_swapImgRestore() { //v3.0
var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_swapImage() { //v3.0
var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
</script>
</head>
<body background="Bilder/hg.jpg" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" onLoad="MM_preloadImages('Bilder/navi_01-over.gif','Bilder/navi_02-over.gif','Bilder/navi_03-over.gif')">
<div id="Layer1" style="position:absolute; left:0; top:0; width:150; height:420; z-index:1; visibility: visible;">[img]Bilder/logo_links.jpg[/img]</div>
<div id="Layer2" style="position:absolute; left:70; top:6; width:254px; height:82px; z-index:2; visibility: visible;">[img]Bilder/logo.jpg[/img]</div>
<div id="Layer4" style="position:absolute; left:724; top:0; width:36; height:420; z-index:4; visibility: visible;">
<table width="36" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>[url='gewinn.htm'][img]Bilder/navi_01.gif[/img][/url]</td>
</tr>
<tr>
<td>[url='angebot.htm'][img]Bilder/navi_02.gif[/img][/url]</td>
</tr>
<tr>
<td>[url='sms.htm'][img]Bilder/navi_03.gif[/img][/url]</td>
</tr>
<tr>
<td>[img]Bilder/navi_04-over.gif[/img]</td>
</tr>
</table>
</div>
<div id="Layer3" style="position:absolute; left:56px; top:77px; width:623px; height:347px; z-index:5; visibility: visible; overflow: auto;">
<form name="Formular" method="post" action="formmail.php" onSubmit="return chkFormular()">
<table width="509" border="0" cellspacing="0" cellpadding="0">
<tr align="left" valign="top">
<td width="10">[img]../images/spacer_links.gif[/img]</td>
<td width="499">
<font size="2" face="Verdana, Arial, Helvetica, sans-serif">[b]Ich
möchte den First Avenue Katalog gratis erhalten.[/b]</font>
</p>
<table width="489" border="0" cellspacing="2" cellpadding="3">
<tr align="left" valign="top">
<td colspan="2">
</p>
</td>
</tr>
<tr align="left" valign="top">
<td width="96" class="titel" valign="middle"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Name:</font></td>
<td width="375" valign="middle">
<input type="text" name="Name" size="30">
</td>
</tr>
<tr align="left" valign="top">
<td width="96" class="titel" valign="middle"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Vorname:</font></td>
<td width="375" valign="middle">
<input type="text" name="Vorname" size="30">
</td>
</tr>
<tr align="left" valign="top">
<td width="96" class="titel" valign="middle"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Strasse/Nr.:</font></td>
<td width="375" valign="middle">
<input type="text" name="Strasse" size="30">
</td>
</tr>
<tr align="left" valign="top">
<td width="96" class="titel" valign="middle"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">PLZ:</font></td>
<td width="375" valign="middle">
<input type="text" name="PLZ" size="5" maxlength="5">
</td>
</tr>
<tr align="left" valign="top">
<td width="96" class="titel" valign="middle"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Ort:</font></td>
<td width="375" valign="middle">
<input type="text" name="Ort" size="30">
</td>
</tr>
<tr align="left" valign="top">
<td width="96" class="titel" valign="middle"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Telefon:</font></td>
<td width="375" valign="middle">
<input type="text" name="Telefon" size="30">
</td>
</tr>
<tr align="left" valign="top">
<td width="96" class="titel" valign="middle"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">E-Mail:</font></td>
<td width="375" valign="middle">
<input type="text" name="email" size="30">
</td>
</tr>
<tr align="left" valign="top">
<td width="96" class="titel" valign="middle">
<div align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Alter:</font></div>
</td>
<td width="375" valign="middle">
<input name="Alter" type="text" id="Alter" size="30">
</td>
</tr>
<tr align="left" valign="top">
<td width="96" class="titel" valign="middle"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Bemerkungen: </font></td>
<td width="375" valign="middle">
<textarea name="Bemerkungen" cols="40" rows="5"></textarea>
</td>
</tr>
<tr align="left" valign="top">
<td width="96" class="titel" valign="middle">
<input type="hidden" name="recipient" value="info@first-avenue.ch">
<input type="hidden" name="require" value="Name,Vorname,Strasse,PLZ,Ort,email,Alter">
<input type="hidden" name="redirect" value="antwort.htm">
<input type="hidden" name="subject" value="Kontakt von firstavenue.ch">
</td>
<td width="375" valign="middle">
<input type="submit" name="Submit" value="Abschicken">
<input type="reset" name="Löschen" value="Löschen">
</td>
</tr>
</table>
</p>
</td>
</tr>
</table>
</form>
</div>
</body>
</html>
Alles anzeigen
formmail.php
Code
<?
$version = "4.1b";
$referers = array ();
// who are blocked from using the script (requested)
$banlist = array ('*@somedomain.com', 'user@domain.com', 'etc@domains.com');
// our mighty error function..
function print_error($reason,$type = 0) {
global $version;
build_body($title, $bgcolor, $text_color, $link_color, $vlink_color, $alink_color, $style_sheet);
// for missing required data
if ($type == "missing") {
?>
Die Anmeldung konnte aus folgenden Gruenden nicht abgeschickt werden:
<ul><?
echo $reason."\n";
?>[/list]
Bitte gebrauchen Sie den Zurueck-Button Ihres Browsers und versuchen Sie es erneut.<?
} else { // every other error
?>
Die Anmeldung konnte aus folgenden Gruenden nicht abgeschickt werden:
<?
}
echo "
\n";
echo "[size=8]This form is powered by <a href=\"http://www.lumbroso.com/scripts/\">Jack's Formmail.php $version!</a>[/size]\n\n";
exit;
}
// function to check the banlist
// suggested by a whole lot of people.. Thanks
function check_banlist($banlist, $email) {
if (count($banlist)) {
$allow = true;
foreach($banlist as $banned) {
$temp = explode("@", $banned);
if ($temp[0] == "*") {
$temp2 = explode("@", $email);
if (trim(strtolower($temp2[1])) == trim(strtolower($temp[1])))
$allow = false;
} else {
if (trim(strtolower($email)) == trim(strtolower($banned)))
$allow = false;
}
}
}
if (!$allow) {
print_error("You are using from a [b]banned email address.[/b]");
}
}
// function to check the referer for security reasons.
// contributed by some one who's name got lost.. Thanks
// goes out to him any way.
function check_referer($referers) {
if (count($referers)) {
$found = false;
$temp = explode("/",getenv("HTTP_REFERER"));
$referer = $temp[2];
for ($x=0; $x < count($referers); $x++) {
if (eregi ($referers[$x], $referer)) {
$found = true;
}
}
if (!getenv("HTTP_REFERER"))
$found = false;
if (!$found){
print_error("You are coming from an [b]unauthorized domain.[/b]");
error_log("[FormMail.php] Illegal Referer. (".getenv("HTTP_REFERER").")", 0);
}
return $found;
} else {
return true; // not a good idea, if empty, it will allow it.
}
}
if ($referers)
check_referer($referers);
if ($banlist)
check_banlist($banlist, $email);
// parse the form and create the content string which we will send
function parse_form($array) {
// build reserved keyword array
$reserved_keys[] = "MAX_FILE_SIZE";
$reserved_keys[] = "required";
$reserved_keys[] = "redirect";
$reserved_keys[] = "email";
$reserved_keys[] = "require";
$reserved_keys[] = "path_to_file";
$reserved_keys[] = "recipient";
$reserved_keys[] = "subject";
$reserved_keys[] = "bgcolor";
$reserved_keys[] = "text_color";
$reserved_keys[] = "link_color";
$reserved_keys[] = "vlink_color";
$reserved_keys[] = "alink_color";
$reserved_keys[] = "title";
$reserved_keys[] = "missing_fields_redirect";
$reserved_keys[] = "env_report";
if (count($array)) {
while (list($key, $val) = each($array)) {
// exclude reserved keywords
$reserved_violation = 0;
for ($ri=0; $ri<count($reserved_keys); $ri++) {
if ($key == $reserved_keys[$ri]) {
$reserved_violation = 1;
}
}
// prepare content
if ($reserved_violation != 1) {
if (is_array($val)) {
for ($z=0;$z<count($val);$z++) {
$content .= "$key: $val[$z]\n";
}
} else {
$content .= "$key: $val\n";
}
}
}
}
return $content;
}
// mail the content we figure out in the following steps
function mail_it($content, $subject, $email, $recipient) {
mail($recipient, $subject, $content, "From: $email\r\nReply-To: $email\r\nX-Mailer: DT_formmail");
}
// take in the body building arguments and build the body tag for page display
function build_body($title, $bgcolor, $text_color, $link_color, $vlink_color, $alink_color, $style_sheet) {
if ($style_sheet)
echo "<LINK rel=STYLESHEET href=\"$style_sheet\" Type=\"text/css\">\n";
if ($title)
echo "<title>$title</title>\n";
if (!$bgcolor)
$bgcolor = "#FFFFFF";
if (!$text_color)
$text_color = "#000000";
if (!$link_color)
$link_color = "#0000FF";
if (!$vlink_color)
$vlink_color = "#FF0000";
if (!$alink_color)
$alink_color = "#000088";
if ($background)
$background = "background=\"$background\"";
echo "<body bgcolor=\"$bgcolor\" text=\"$text_color\" link=\"$link_color\" vlink=\"$vlink_color\" alink=\"$alink_color\" $background>\n\n";
}
// This is because I originally had it require but too many people
// were used to Matt's Formmail.pl which used required instead.
if ($required)
$require = $required;
// handle the required fields
if ($require) {
// seperate at the commas
$require = ereg_replace( " +", "", $require);
$required = split(",",$require);
for ($i=0;$i<count($required);$i++) {
$string = trim($required[$i]);
// check if they exsist
if((!(${$string})) || (!(${$string}))) {
// if the missing_fields_redirect option is on: redirect them
if ($missing_fields_redirect) {
header ("Location: $missing_fields_redirect");
exit;
}
$require;
$missing_field_list .= "[b]Missing: $required[$i][/b]
\n";
}
}
// send error to our mighty error function
if ($missing_field_list)
print_error($missing_field_list,"missing");
}
// check the email fields for validity
if (($email) || ($EMAIL)) {
$email = trim($email);
if ($EMAIL)
$email = trim($EMAIL);
if (!eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$", $email)) {
print_error("your [b]email address[/b] is invalid");
}
$EMAIL = $email;
}
// check zipcodes for validity
if (($ZIP_CODE) || ($zip_code)) {
$zip_code = trim($zip_code);
if ($ZIP_CODE)
$zip_code = trim($ZIP_CODE);
if (!ereg("(^[0-9]{5})-([0-9]{4}$)", trim($zip_code)) && (!ereg("^[a-zA-Z][0-9][a-zA-Z][[:space:]][0-9][a-zA-Z][0-9]$", trim($zip_code))) && (!ereg("(^[0-9]{5})", trim($zip_code)))) {
print_error("your [b]zip/postal code[/b] is invalid");
}
}
// check phone for validity
if (($PHONE_NO) || ($phone_no)) {
$phone_no = trim($phone_no);
if ($PHONE_NO)
$phone_no = trim($PHONE_NO);
if (!ereg("(^(.*)[0-9]{3})(.*)([0-9]{3})(.*)([0-9]{4}$)", $phone_no)) {
print_error("your [b]phone number[/b] is invalid");
}
}
// check phone for validity
if (($FAX_NO) || ($fax_no)) {
$fax_no = trim($fax_no);
if ($FAX_NO)
$fax_no = trim($FAX_NO);
if (!ereg("(^(.*)[0-9]{3})(.*)([0-9]{3})(.*)([0-9]{4}$)", $fax_no)) {
print_error("your [b]fax number[/b] is invalid");
}
}
// prepare the content
$content = parse_form($HTTP_POST_VARS);
// check for a file if there is a file upload it
if ($file_name) {
if ($file_size > 0) {
if (!ereg("/$", $path_to_file))
$path_to_file = $path_to_file."/";
$location = $path_to_file.$file_name;
if (file_exists($path_to_file.$file_name))
$location .= ".new";
copy($file,$location);
unlink($file);
$content .= "Uploaded File: ".$location."\n";
}
}
// second file.
if ($file2_name) {
if ($file_size > 0) {
if (!ereg("/$", $path_to_file))
$path_to_file = $path_to_file."/";
$location = $path_to_file.$file2_name;
if (file_exists($path_to_file.$file2_name))
$location .= ".new";
copy($file2,$location);
unlink($file2);
$content .= "Uploaded File: ".$location."\n";
}
}
// if the env_report option is on: get eviromental variables
if ($env_report) {
$env_report = ereg_replace( " +", "", $env_report);
$env_reports = split(",",$env_report);
$content .= "\n------ eviromental variables ------\n";
for ($i=0;$i<count($env_reports);$i++) {
$string = trim($env_reports[$i]);
if ($env_reports[$i] == "REMOTE_HOST")
$content .= "REMOTE HOST: ".$REMOTE_HOST."\n";
else if ($env_reports[$i] == "REMOTE_USER")
$content .= "REMOTE USER: ". $REMOTE_USER."\n";
else if ($env_reports[$i] == "REMOTE_ADDR")
$content .= "REMOTE ADDR: ". $REMOTE_ADDR."\n";
else if ($env_reports[$i] == "HTTP_USER_AGENT")
$content .= "BROWSER: ". $HTTP_USER_AGENT."\n";
}
}
// if the subject option is not set: set the default
if (!$subject)
$subject = "Anfrage Website";
// send it off
mail_it(stripslashes($content), stripslashes($subject), $email, $recipient);
Alles anzeigen