webForumDet fria alternativet
Logga in / Bli medlem

Formtomail problem

PHP

1 svar · 241 visningar · startad av überfuzz

Medlem sedan apr. 2006409 inlägg
Trådstart#1

Jag har ett formtomail på en sida som blivit spammat. Nu försöker jag fixa ett spamskydd, men något blir fel. När jag testar det 'nya' formuläret får jag bekräftelse på att meddelande gått fram, men det kommer inget mail till min test@dress. Vad har jag gjort för fel?

<?php
$error_msg = '<br /><p class="red">You must fill out the entire form.</p>';
$ve1riXfi3caYti5onZ = rand(0,9)."".rand(0,9)."".rand(0,9)."".rand(0,9);
$error = false;
$submit = $_POST['submit'];

if(empty($submit))
	$form_sent = false;
else
	$form_sent = true;
	if ($form_sent)
		{
		$to  = '@hotmail.com' . ', ';

		$name = $_POST['name'];
		$email = $_POST['email'];
		$subject = $_POST['subject'];
		$message = $_POST['message'];

		if(!$name)
			{$error_msg .= '<p>Don\'t forget you name.</p>'; $error = true;}
		if(!$email)
			{$error_msg .= '<p>You forgot your e-mail.</p>'; $error = true;}
		if(!$subject)
			{$error_msg .= '<p>Write a subject.</p>'; $error = true;}
		if(!$message)
			{$error_msg .= '<p>Please write a message.</p>'; $error = true;}
		if($_POST["ve6riZfi4caYti2onXco0de1"] != $_POST["ve6riZfi4caYti2onXco0de2"])
			{$error_msg .= '<p>You must enter the correct verification code.</p>'; $error = true;}
		if($email)
			{
			if(!eregi("^[a-z0-9_].+@[a-z0-9\-]+\.[a-z0-9\-\.]+$", $email))
				{$error_msg .= "<p id=\"pprojin\"><i>. Not a valid mailaddress!</i></p>"; $error = true;}
			}

			if(!$error)
				{
				$msg  = "Name: \t $name \r\n";
				$msg .= "E-mail: \t $email \r\n";
				$msg .= "Message: \n $message \r\n";

				$headers  = "MIME-Version: 1.0\r\n";
				$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

				$headers .= "X-Priority: 1\r\n";
				$headers .= "X-MSMail-Priority: High\r\n";
				$headers .= "X-Mailer: php\r\n";
				$headers .= "From: $name <$email>\r\n";
				$headers .= "Reply-to: $name <$email>\r\n";
				$headers .= "Return-path: $name <$email>\r\n";

				mail($to, $subject ,stripslashes($msg), $headers);
				}
		}

		if (($form_sent) && (!$error))
			{
				echo '<br /><br /><p>Thank you for your a message ' . $name .'. ';
				echo 'Your message was send without any problems and we will answer as soon as posible.</p>';
			}
		else
			{
			if ($error) { echo $error_msg; }
?>
		<br />
		<form action="?page_id=60" method="post">
			<p>Name:<br />
			<input name="name" type="text" value="" class="form" /></p>
			<p>E-mail:<br />
			<input name="email" type="text" value="" class="form" /></p>
			<p>Subject:<br />
			<input name="subject" type="text" value="" class="form" /></p>
			<p>Message:<br />
			<textarea name="message" cols="30" rows="8" class="form"></textarea></p>
			<p><input name="ve6riZfi4caYti2onXco0de1" type="hidden" value="<?=$ve1riXfi3caYti5onZ?>" />4 Digit Verification Code:<br />(This is used to prevent spam and flooding)<br /></p>
			<p><?=$ve1riXfi3caYti5onZ?></p>
			<p>Repeat Verification Code:<br /><input maxlength="4" name="ve6riZfi4caYti2onXco0de2" size="4" type="text" class="form" /></p>
			<p><input name="submit" type="submit" value="Send" class="skicka_knapp" />
			<input name="submit" type="reset" value="Clear" class="skicka_knapp" /></p>
		</form>
<?php			}?>

Någon som ser vad jag gjort för fel..?

Medlem sedan apr. 2006409 inlägg
#2

Ojdå, det var spamfiltret i min mail som stoppade meddelandet. *generad*

254 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
118 ms — ändringar (db)