hafley
08-27-2005, 11:02 PM
i am making a contact form and i want a script which dosent just ckeck for email address structure such as xxx@xxx.com but rather looks up dns and sees whether or not it's a valid address. any ideas?
this is my contact form: contact.php
<style type="text/css">
img.verify { border: #999999 solid 1px; }
</style>
<form method="POST" action="contact_script.php" onSubmit="return ValidateForm()" name="contact">
<table width="480" border="0" cellspacing="3" cellpadding="1">
<tr align="left" valign="top">
<td width="21%"><font size="2" face="Arial">Full Name</font></td>
<td width="31%"> <input type="text" name="FirstName"></td>
<td width="16%"> </td>
<td width="32%"> </td>
</tr>
<tr align="left" valign="top">
<td><font size="2" face="Arial">Company</font></td>
<td><input type="text" name="Company"></td>
<td> </td>
<td> </td>
</tr>
<tr align="left" valign="top">
<td height="24"><font size="2" face="Arial">Email Address</font></td>
<td><input type="text" name="EmailFrom"></td>
<td colspan="2"> <font size="2" face="Arial"><em>example me@mycompany.com</em></font></td>
</tr>
<tr align="left" valign="top">
<td><font size="2" face="Arial">Contact Number</font></td>
<td><input type="text" name="ContactNumber"></td>
<td colspan="2"><font size="2" face="Arial"><em>example 916-123-4567</em></font></td>
</tr>
<tr align="left" valign="top">
<td height="54"><font size="2" face="Arial">how can we help you?</font></td>
<td colspan="3"><p>
<textarea name="Comments" cols="30" rows="5"></textarea>
</p></td>
</tr>
<tr align="left" valign="top">
<td height="26" colspan="4">for your security enter the text you see in
the box below
<input name="txtNumber" type="text" id="txtNumber2" value=""> </td>
</tr>
<tr align="left" valign="top">
<td height="27" colspan="3"><input type="submit" onClick="return checkmail(this.form.EmailFrom)" name="submit" value="Send">
</td>
<td height="29"><img src="randomImage.php" border="0" align="absbottom" class="verify"></td>
</tr>
</table>
</form>
and this is the form processor: contact_script.php
<?php
session_start();
$EmailFrom = Trim(stripslashes($_POST['EmailFrom']));
$EmailTo = "contact@digitalsunday.com";
$Subject = "Website Feedback";
$FirstName = Trim(stripslashes($_POST['FirstName']));
$Company = Trim(stripslashes($_POST['Company']));
$ContactNumber = Trim(stripslashes($_POST['ContactNumber']));
$Comments = Trim(stripslashes($_POST['Comments']));
$number = $_POST['txtNumber'];
$ip = $_SERVER['REMOTE_ADDR'];
// validation
$validationOK=true;
if (Trim($EmailFrom)=="") $validationOK=false;
if (md5($number) == $_SESSION['image_random_value']) $validationOK=true;
else $validationOK=false;
if (!$validationOK) {
print "<meta http-equiv=\"refresh\" content=\"0;URL=index.php?p=error\">";
exit;
}
// prepare email body text
$Body = "";
$Body .= "First Name: ";
$Body .= $FirstName;
$Body .= "\n";
$Body .= "Company: ";
$Body .= $Company;
$Body .= "\n";
$Body .= "Contact Number: ";
$Body .= $ContactNumber;
$Body .= "\n";
$Body .= "Comments: ";
$Body .= $Comments;
$Body .= "\n";
$Body .= "IP Address: ";
$Body .= $ip;
$Body .= "\n";
// send email
$success = mail($EmailTo, $Subject, $Body, "From: <$EmailFrom>");
// redirect to success page
if ($success){
print "<meta http-equiv=\"refresh\" content=\"0;URL=index.php?p=thanks\">";
}
else{
print "<meta http-equiv=\"refresh\" content=\"0;URL=index.php?p=error\">";
}
?>
this is my contact form: contact.php
<style type="text/css">
img.verify { border: #999999 solid 1px; }
</style>
<form method="POST" action="contact_script.php" onSubmit="return ValidateForm()" name="contact">
<table width="480" border="0" cellspacing="3" cellpadding="1">
<tr align="left" valign="top">
<td width="21%"><font size="2" face="Arial">Full Name</font></td>
<td width="31%"> <input type="text" name="FirstName"></td>
<td width="16%"> </td>
<td width="32%"> </td>
</tr>
<tr align="left" valign="top">
<td><font size="2" face="Arial">Company</font></td>
<td><input type="text" name="Company"></td>
<td> </td>
<td> </td>
</tr>
<tr align="left" valign="top">
<td height="24"><font size="2" face="Arial">Email Address</font></td>
<td><input type="text" name="EmailFrom"></td>
<td colspan="2"> <font size="2" face="Arial"><em>example me@mycompany.com</em></font></td>
</tr>
<tr align="left" valign="top">
<td><font size="2" face="Arial">Contact Number</font></td>
<td><input type="text" name="ContactNumber"></td>
<td colspan="2"><font size="2" face="Arial"><em>example 916-123-4567</em></font></td>
</tr>
<tr align="left" valign="top">
<td height="54"><font size="2" face="Arial">how can we help you?</font></td>
<td colspan="3"><p>
<textarea name="Comments" cols="30" rows="5"></textarea>
</p></td>
</tr>
<tr align="left" valign="top">
<td height="26" colspan="4">for your security enter the text you see in
the box below
<input name="txtNumber" type="text" id="txtNumber2" value=""> </td>
</tr>
<tr align="left" valign="top">
<td height="27" colspan="3"><input type="submit" onClick="return checkmail(this.form.EmailFrom)" name="submit" value="Send">
</td>
<td height="29"><img src="randomImage.php" border="0" align="absbottom" class="verify"></td>
</tr>
</table>
</form>
and this is the form processor: contact_script.php
<?php
session_start();
$EmailFrom = Trim(stripslashes($_POST['EmailFrom']));
$EmailTo = "contact@digitalsunday.com";
$Subject = "Website Feedback";
$FirstName = Trim(stripslashes($_POST['FirstName']));
$Company = Trim(stripslashes($_POST['Company']));
$ContactNumber = Trim(stripslashes($_POST['ContactNumber']));
$Comments = Trim(stripslashes($_POST['Comments']));
$number = $_POST['txtNumber'];
$ip = $_SERVER['REMOTE_ADDR'];
// validation
$validationOK=true;
if (Trim($EmailFrom)=="") $validationOK=false;
if (md5($number) == $_SESSION['image_random_value']) $validationOK=true;
else $validationOK=false;
if (!$validationOK) {
print "<meta http-equiv=\"refresh\" content=\"0;URL=index.php?p=error\">";
exit;
}
// prepare email body text
$Body = "";
$Body .= "First Name: ";
$Body .= $FirstName;
$Body .= "\n";
$Body .= "Company: ";
$Body .= $Company;
$Body .= "\n";
$Body .= "Contact Number: ";
$Body .= $ContactNumber;
$Body .= "\n";
$Body .= "Comments: ";
$Body .= $Comments;
$Body .= "\n";
$Body .= "IP Address: ";
$Body .= $ip;
$Body .= "\n";
// send email
$success = mail($EmailTo, $Subject, $Body, "From: <$EmailFrom>");
// redirect to success page
if ($success){
print "<meta http-equiv=\"refresh\" content=\"0;URL=index.php?p=thanks\">";
}
else{
print "<meta http-equiv=\"refresh\" content=\"0;URL=index.php?p=error\">";
}
?>