Nieuw lid |
|
Goedemorgen,
ik ben nieuw hier, maar heb hier al erg veel info weggehaald laatste jaren !
Echter loop ik nu tegen een beetje vreemd ding aan, en ik hoop dat jullie me kunnen helpen
Ik heb een contactformulier gemaakt, welke gecheckt wordt door een "mailer.php" (spamcode etc. wordt dan gecheckt).
Dit werkt allemaal perfect, echter is het probleem als volgt.
Als iemand in het tekstvak 2 of 3 regels typt en op Verzenden drukt, gaat alles goed, als je de spamcode (catchapa ofzo) goed hebt , krijg je dan een bericht van mailer.php dat het gelukt is en als de code fout is geeft hij dit ook netjes aan en kun je het opnieuw proberen.
Echter als iemand een heel 'verhaal' typt (bijv. vanaf 5 regels), en op verzenden drukt met een verkeerde spamcode, dan blijft hij hangen op de mailer.php... Je ziet dan gewoon een wit scherm, en ik kom er niet uit waarom hij dit doet. Als je overigens de spamcode wél goed intypt gaat hij weer WEL gewoon door....
Komt iemand dit bekend voor?
Deze code gebruik ik bij contact.php:
In de head:
<script>
function refreshImage()
{
var url = "verificationimage.php?p=" + Math.random();
document.getElementById("verImage").setAttribute('src', url);
}
</script>
<script> function refreshImage() { var url = "verificationimage.php?p=" + Math.random(); document.getElementById("verImage").setAttribute('src', url); } </script>
en de body:
<form action="mailer.php" method="post" name="form1" id="form1" style="margin:0px; font-family: Helvetica; font-size:11px; width:750px;" onsubmit="MM_validateForm('email','','RisEmail','Onderwerp','','R','antispam_box','','R','Vraag_Opmerking','','R');return document.MM_returnValue">
<p> </p>
<p>Uw Emailadres:<br />
<input name="email" type="text" id="email" tabindex="1" style="padding:2px; border:1px solid #CCCCCC; width:180px; height:14px; font-family: Helvetica; :11px;" value="<?php echo $_GET['email'];?>"/>
<br />
<br />
Onderwerp:<br />
<input name="Onderwerp" type="text" id="Onderwerp" tabindex="2" style="padding:2px; border:1px solid #CCCCCC; width:180px; height:14px;font-family: Helvetica; font-size:11px;" value="<?php echo $_GET['Onderwerp'];?>"/>
<br />
<br />
Type hier de anti-spam code:<br />
<input name="antispam_box" type="text" tabindex="3" id="antispam_box" style="padding:2px; border:1px solid #CCCCCC; width:180px; height:14px;font-family: Helvetica; font-size:11px;"/>
<img id="verImage" src="verificationimage.php?<?php echo rand(0,9999);?>" alt="Anti-spam code, type het in het invoer vak" align="absbottom" /> <a href="#" onclick="refreshImage();return false;"><img src=images/refresh.png alt="Genereer een nieuwe code." width="15" height="18" /></a><br />
<br />
<!-- if the variable "wrong_code" is sent from previous page then display the error field -->
<?php if(isset($_GET['wrong_code'])){?>
</p>
<div style="border:1px solid #990000; background-color:#D70000; color:#FFFFFF; padding:4px; padding-left:6px; width:730px;">Sorry, de ingevoerde code is niet juist. Probeer het a.u.b. opnieuw. Neem, wanneer het probleem zich blijft voort doen, contact op met de <a href="wm.php">webmaster</a>.</div>
<p><br />
<?php ;}?>
Gebruik onderstaand tekstvak voor uw vraag / opmerking:<br />
<textarea name="Vraag_Opmerking" cols="2" rows="7" id="Vraag_Opmerking" tabindex="4" style="padding:2px; border:1px solid #CCCCCC; width:300px; font-family: Helvetica; font-size:11px;"><?php echo $_GET['Vraag_Opmerking'];?></textarea>
</p>
<p>
<input name="Submit" type="submit" tabindex="5" style="margin-top:10px; border:1px solid #000000; width:100px; height:20px;font-family: Helvetica; font-size:11px; padding-left:2px; padding-right:2px; padding-top:0px; padding-bottom:2px; line-height:14px; background-color:#EFEFEF;" value="Verzenden"/>
<input name="Reset" type="reset" tabindex="6" style="margin-top:10px; border:1px solid #000000; width:100px; height:20px;font-family: Helvetica; font-size:11px; padding-left:2px; padding-right:2px; padding-top:0px; padding-bottom:2px; line-height:14px; background-color:#EFEFEF;" value="Wissen"/>
</p>
</form>
<form action="mailer.php" method="post" name="form1" id="form1" style="margin:0px; font-family: Helvetica; font-size:11px; width:750px;" onsubmit="MM_validateForm('email','','RisEmail','Onderwerp','','R','antispam_box','','R','Vraag_Opmerking','','R');return document.MM_returnValue"> <p> </p> <p>Uw Emailadres:<br /> <input name="email" type="text" id="email" tabindex="1" style="padding:2px; border:1px solid #CCCCCC; width:180px; height:14px; font-family: Helvetica; :11px;" value=" <?php echo $_GET['email'];? >"/> <br /> <br /> Onderwerp:<br /> <input name="Onderwerp" type="text" id="Onderwerp" tabindex="2" style="padding:2px; border:1px solid #CCCCCC; width:180px; height:14px;font-family: Helvetica; font-size:11px;" value=" <?php echo $_GET['Onderwerp'];? >"/> <br /> <br /> Type hier de anti-spam code:<br /> <input name="antispam_box" type="text" tabindex="3" id="antispam_box" style="padding:2px; border:1px solid #CCCCCC; width:180px; height:14px;font-family: Helvetica; font-size:11px;"/> <img id="verImage" src="verificationimage.php? <?php echo rand(0,9999);? >" alt="Anti-spam code, type het in het invoer vak" align="absbottom" /> <a href="#" onclick="refreshImage();return false;"><img src=images/refresh.png alt="Genereer een nieuwe code." width="15" height="18" /></a><br /> <br /> <!-- if the variable "wrong_code" is sent from previous page then display the error field --> <?php if(isset($_GET['wrong_code'])){?> </p> <div style="border:1px solid #990000; background-color:#D70000; color:#FFFFFF; padding:4px; padding-left:6px; width:730px;">Sorry, de ingevoerde code is niet juist. Probeer het a.u.b. opnieuw. Neem, wanneer het probleem zich blijft voort doen, contact op met de <a href="wm.php">webmaster</a>.</div> <p><br /> <?php ;}?> Gebruik onderstaand tekstvak voor uw vraag / opmerking:<br /> <textarea name="Vraag_Opmerking" cols="2" rows="7" id="Vraag_Opmerking" tabindex="4" style="padding:2px; border:1px solid #CCCCCC; width:300px; font-family: Helvetica; font-size:11px;"> <?php echo $_GET['Vraag_Opmerking'];? ></textarea> </p> <p> <input name="Submit" type="submit" tabindex="5" style="margin-top:10px; border:1px solid #000000; width:100px; height:20px;font-family: Helvetica; font-size:11px; padding-left:2px; padding-right:2px; padding-top:0px; padding-bottom:2px; line-height:14px; background-color:#EFEFEF;" value="Verzenden"/> <input name="Reset" type="reset" tabindex="6" style="margin-top:10px; border:1px solid #000000; width:100px; height:20px;font-family: Helvetica; font-size:11px; padding-left:2px; padding-right:2px; padding-top:0px; padding-bottom:2px; line-height:14px; background-color:#EFEFEF;" value="Wissen"/> </p> </form>
Dan, in mailer.php:
<?php
// load the variables form address bar
$Onderwerp = $_POST["Onderwerp"];
$Vraag_Opmerking = $_POST["Vraag_Opmerking"];
$email = $_POST["email"];
$antispam_box = $_POST["antispam_box"];
// remove the backslashes that normally appears when entering " or '
$Vraag_Opmerking = stripslashes($Vraag_Opmerking);
$Onderwerp = stripslashes($Onderwerp);
$email = stripslashes($email);
// check to see if verificaton code was correct
if(md5($antispam_box).'a4xn' == $_COOKIE['tntcon']){
// if verification code was correct send the FeedBack_Problem and show this page
mail("info@domeinnaam.nl", 'Een nieuw bericht verzonden vanaf de website over: '.$Onderwerp, $_SERVER['REMOTE_ADDR']."\n\n".$Vraag_Opmerking, "From: $email");
// delete the cookie so it cannot sent again by refreshing this page
setcookie('tntcon','');
} else if(isset($Vraag_Opmerking) and $Vraag_Opmerking!=""){
// if verification code was incorrect then return to contact page and show error
header("Location:".$_SERVER['HTTP_REFERER']."?email=$email&Vraag_Opmerking=$Vraag_Opmerking&Onderwerp=$Onderwerp&wrong_code=true");
exit;
} else {
echo "Er is iets fout gegaan, probeer het a.u.b. opnieuw.";
exit;
}
?>
<?php // load the variables form address bar $Onderwerp = $_POST["Onderwerp"]; $Vraag_Opmerking = $_POST["Vraag_Opmerking"]; $email = $_POST["email"]; $antispam_box = $_POST["antispam_box"]; // remove the backslashes that normally appears when entering " or ' // check to see if verificaton code was correct if(md5($antispam_box).'a4xn' == $_COOKIE['tntcon']){ // if verification code was correct send the FeedBack_Problem and show this page mail("info@domeinnaam.nl", 'Een nieuw bericht verzonden vanaf de website over: '.$Onderwerp, $_SERVER['REMOTE_ADDR']."\n\n".$Vraag_Opmerking, "From: $email"); // delete the cookie so it cannot sent again by refreshing this page } else if(isset($Vraag_Opmerking) and $Vraag_Opmerking!=""){ // if verification code was incorrect then return to contact page and show error header("Location:".$_SERVER['HTTP_REFERER']."?email=$email&Vraag_Opmerking=$Vraag_Opmerking&Onderwerp=$Onderwerp&wrong_code=true"); } else { echo "Er is iets fout gegaan, probeer het a.u.b. opnieuw."; } ?>
|