PDA

View Full Version : Form Validation and Email - Please Help Me...I'm really struggling...



henrybaker
02-28-2006, 10:41 AM
Hi,

I created a feednack page with a simple data capture form. All I want to do is validate the customers inputs e.g. make sure the mail address is a mail address and then when the data is correct send them to a thanks page and mail me the data.

To teach myself the process I've been through the threads by Pablo and created the two pages. The form page and the page with the .php to process the form.

Here's the php script I'm using on the second page...

<?php

@$Email = addslashes($_POST['Email']);
function RecursiveMkdir($path)
{
if (!file_exists($path))
{
RecursiveMkdir(dirname($path));
mkdir($path, 0777);
}


if (strlen($Email) == 0 )
{
header("Location: index.html");
exit;
}
if (! ereg('[A-Za-z0-9_-]+\@[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+', $Email))
{
header("Location: index.html");
exit;
}


$pfw_header = "From: $Email\n"
. "Reply-To: $Email\n";
$pfw_subject = "Data submitted from FeedbackForm";
$pfw_email_to = "henry@broadway-marketing.com";
$pfw_message = "Modalita_Risposta: $Modalita_Risposta\n"


. "Email: $Email\n"

*****($pfw_email_to, $pfw_subject ,$pfw_message ,$pfw_header ) ;
header("Location: index.html");
?>

The test site is at www.guaranteed-mlm-success.com/FF.html (http://www.guaranteed-mlm-success.com/FF.html)

Please can anyone help??

Henry.

navaldesign
02-28-2006, 11:26 AM
<?php

@$Email = addslashes($_POST['Email']);
function RecursiveMkdir($path)
{
if (!file_exists($path))
{
RecursiveMkdir(dirname($path));
mkdir($path, 0777);
}
This is for uploading a file. Do you need this?

if (strlen($Email) == 0 )
{
header("Location: index.html"); This will send your visitor to the index page. You should send him in an error page. Make it "errorpage.html"
exit;
}
if (! ereg('[A-Za-z0-9_-]+\@[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+', $Email))
{
header("Location: index.html"); The same as above. Make it "errorpage.html"
exit;
}


$pfw_header = "From: $Email\n"
. "Reply-To: $Email\n";
$pfw_subject = "Data submitted from FeedbackForm";
$pfw_email_to = "henry@broadway-marketing.com";
$pfw_message = "Modalita_Risposta: $Modalita_Risposta\n"


. "Email: $Email\n"
*****($pfw_email_to, $pfw_subject ,$pfw_message ,$pfw_header ) ;
header("Location: index.html");

All this is part of another script, not Pablo's. The message in your form has not even been created. You should change the whole part with



$mailto = "henry@broadway-marketing.com";
$mailsubj = "Feedback form";
$mailhead = "From: $Email\n";
reset ($HTTP_POST_VARS);
$mailbody = "Values submitted from web site form:\n";
while (list ($key, $val) = each ($HTTP_POST_VARS))
{
$mailbody .= "$key : $val\n";
}
mail($mailto, $mailsubj, $mailbody, $mailhead);


header("Location: thankyoupage.html");


?>


thankyoupage.html and errorpage.html are pages that you have to create in BV and publish in the same folder as the script.

Also change the email field in your form in "Email", not "requiredEmail"