电子邮件联系表格



好的,我已经制作了一个联系表格。我需要一个php脚本来通过电子邮件向我发送信息。以下是我目前所拥有的:

<?php
$emailSubject = 'Contact Form';
$webMaster = 'email-here';
$firstName = $_POST ['first_name'];
$lastName = $_POST['last_name'];
$emailAddress = $_POST ['email'];
$uploadFile = $_POST ['datafile'];
$questions = $_POST ['comments'];
/* If e-mail is not valid show error message */
if (!preg_match("/([w-]+@[w-]+.[w-]+)/", $email))
{
show_error("E-mail address not valid");
}

好的,我已经试过了,并试图使一个将提交上传的文件。我什么也找不到。这要么很难,要么就行不通。请帮帮我。

此外,上面写着:

['first_name'];

那是我输入名字的地方吗?

此外,我还有一个感谢页面。它被称为:thank_you.html我需要它在表格发送后出现!

$to_name = stripslashes($_POST['to_name']);
$from_name = stripslashes($_POST['from_name']);
$subject = stripslashes($_POST['subject']);
$body = stripslashes($_POST['body']);
$to_email = $_POST['to_email'];
$attachment = $_FILES['attachment']['tmp_name'];
$attachment_name = $_FILES['attachment']['name']; 
if (is_uploaded_file($attachment)) { //Do we have a file uploaded?
  $fp = fopen($attachment, "rb"); //Open it
  $data = fread($fp, filesize($attachment)); //Read it
  $data = chunk_split(base64_encode($data)); //Chunk it up and encode it as base64 so it can emailed
    fclose($fp);
}
//Let's start our headers
$headers = "From: $from_name<" . $_POST['from_email'] . ">n";
$headers .= "Reply-To: <" . $_POST['from_email'] . ">n"; 
$headers .= "MIME-Version: 1.0n";
$headers .= "Content-Type: multipart/related; type=\"multipart/alternative\"; boundary=\"----=MIME_BOUNDRY_main_message\"n"; 
$headers .= "X-Sender: $from_name<" . $_POST['from_email'] . ">n";
$headers .= "X-Mailer: PHP4n";
$headers .= "X-Priority: 3n"; //1 = Urgent, 3 = Normal
$headers .= "Return-Path: <" . $_POST['from_email'] . ">n"; 
$headers .= "This is a multi-part message in MIME format.n";
$headers .= "------=MIME_BOUNDRY_main_message n"; 
$headers .= "Content-Type: multipart/alternative; boundary=\"----=MIME_BOUNDRY_message_parts\"n"; 

$message = "------=MIME_BOUNDRY_message_partsn";
$message .= "Content-Type: text/plain; charset=\"iso-8859-1\"n"; 
$message .= "Content-Transfer-Encoding: quoted-printablen"; 
$message .= "n"; 
/* Add our message, in this case it's plain text.  You could also add HTML by changing the Content-Type to text/html */
$message .= "$bodyn";
$message .= "n"; 
$message .= "------=MIME_BOUNDRY_message_parts--n"; 
$message .= "n"; 
$message .= "------=MIME_BOUNDRY_main_messagen"; 
$message .= "Content-Type: application/octet-stream;ntname=\"" . $attachment_name . "\"n";
$message .= "Content-Transfer-Encoding: base64n";
$message .= "Content-Disposition: attachment;ntfilename=\"" . $attachment_name . "\"nn";
$message .= $data; //The base64 encoded message
$message .= "n"; 
$message .= "------=MIME_BOUNDRY_main_message--n"; 

// send the message
mail("$to_name<$to_email>", $subject, $message, $headers); 

http://icrontic.com/discussion/7019/php-email-form-with-attachments

$em = $_POST ['email'];
list($username,$domain)=split('@',$em);
if(!checkdnsrr($domain,'MX')) echo 'please enter a proper e-mail address.';

类似的东西也会很有用,这只是检查mx记录。。

最新更新