2014-11-06 68 views
0

我如何創建HTML格式的表單,將表單的內容通過電子郵件發送給電子郵件?這是我的。通過電子郵件發送表格的內容

<form action="mailto:[email protected]" enctype="text/plain" method="post"> 
    <input name = "subject" placeholder = "Your Name"></input> 
    <br> 
    <textarea name = "message" placeholder = "Email Us." style = "height:100px;"></textarea> 
    <input type="submit" value="Submit" placeholder = "Submit"></input> 
    </form> 

我可以在HTML中使用mailto:action嗎?或者我需要一些PHP像

mail('[email protected]', $_POST['subject'], $_POST['message']); 

有什麼建議嗎?

+0

'mailto:'鏈接通常只在用戶配置了郵件客戶端時才起作用。許多人不知道。爲了可靠,您需要一個服務器端腳本來處理表單併發送郵件。 PHP是一種選擇 - 還有其他的。 – 2014-11-06 06:49:52

回答

1

請嘗試使用標題以及發送電子郵件。

<?php 
$to  = '[email protected]'; 
$subject = $_POST['subject']; 
$message = $_POST['message']; 
$headers = 'From: [email protected]' . "\r\n"; 
$retval = mail($to, $subject, $message, $headers); 
if($retval == true) 
{ 
    echo "Message sent successfully..."; 
} 
else 
{ 
    echo "Message could not be sent..."; 
} 
?> 
1

因此,我即將發佈的內容中存在各種各樣的錯誤。比如不要用表格來設計你的表格等等,但是我會把它從另一個網站上去掉,所以它會很簡單。你需要的是用於郵件的表單和php的混合。

<form name="contactform" method="post" action="send_form_email.php"> 

<table width="450px"> 

<tr> 

<td valign="top"> 

<label for="first_name">First Name *</label> 

</td> 

<td valign="top"> 

<input type="text" name="first_name" maxlength="50" size="30"> 

</td> 

</tr> 

<tr> 

<td valign="top""> 

<label for="last_name">Last Name *</label> 

</td> 

<td valign="top"> 

<input type="text" name="last_name" maxlength="50" size="30"> 

</td> 

</tr> 

<tr> 

<td valign="top"> 

<label for="email">Email Address *</label> 

</td> 

<td valign="top"> 

<input type="text" name="email" maxlength="80" size="30"> 

</td> 

</tr> 

<tr> 

<td valign="top"> 

<label for="telephone">Telephone Number</label> 

</td> 

<td valign="top"> 

<input type="text" name="telephone" maxlength="30" size="30"> 

</td> 

</tr> 

<tr> 

<td valign="top"> 

<label for="comments">Comments *</label> 

</td> 

<td valign="top"> 

<textarea name="comments" maxlength="1000" cols="25" rows="6"></textarea> 

</td> 

</tr> 

<tr> 

<td colspan="2" style="text-align:center"> 

<input type="submit" value="Submit"> 
<a href="http://www.freecontactform.com/email_form.php">Email Form</a> 

</td> 

</tr> 

</table> 

所以有你的基本形式。

這是您的基本php。將其放在與.html文件相同的目錄中:send_form_email.php(必須完全使用該文件名) 確保編輯電子郵件和主題行指示的部分。

<?php 

if(isset($_POST['email'])) { 



// EDIT THE 2 LINES BELOW AS REQUIRED 

$email_to = "[email protected]"; 

$email_subject = "Your email subject line"; 





function died($error) { 

    // your error code can go here 

    echo "We are very sorry, but there were error(s) found with the form you submitted. "; 

    echo "These errors appear below.<br /><br />"; 

    echo $error."<br /><br />"; 

    echo "Please go back and fix these errors.<br /><br />"; 

    die(); 

} 



// validation expected data exists 

if(!isset($_POST['first_name']) || 

    !isset($_POST['last_name']) || 

    !isset($_POST['email']) || 

    !isset($_POST['telephone']) || 

    !isset($_POST['comments'])) { 

    died('We are sorry, but there appears to be a problem with the form you submitted.');  

} 



$first_name = $_POST['first_name']; // required 

$last_name = $_POST['last_name']; // required 

$email_from = $_POST['email']; // required 

$telephone = $_POST['telephone']; // not required 

$comments = $_POST['comments']; // required 



$error_message = ""; 

$email_exp = '/^[A-Za-z0-9._%-][email protected][A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/'; 

if(!preg_match($email_exp,$email_from)) { 

$error_message .= 'The Email Address you entered does not appear to be valid.<br />'; 

} 

$string_exp = "/^[A-Za-z .'-]+$/"; 

if(!preg_match($string_exp,$first_name)) { 

$error_message .= 'The First Name you entered does not appear to be valid.<br />'; 

} 

if(!preg_match($string_exp,$last_name)) { 

$error_message .= 'The Last Name you entered does not appear to be valid.<br />'; 

} 

if(strlen($comments) < 2) { 

$error_message .= 'The Comments you entered do not appear to be valid.<br />'; 

} 

if(strlen($error_message) > 0) { 

died($error_message); 

} 

$email_message = "Form details below.\n\n"; 



function clean_string($string) { 

    $bad = array("content-type","bcc:","to:","cc:","href"); 

    return str_replace($bad,"",$string); 

} 



$email_message .= "First Name: ".clean_string($first_name)."\n"; 

$email_message .= "Last Name: ".clean_string($last_name)."\n"; 

$email_message .= "Email: ".clean_string($email_from)."\n"; 

$email_message .= "Telephone: ".clean_string($telephone)."\n"; 

$email_message .= "Comments: ".clean_string($comments)."\n"; 





// create email headers 

$headers = 'From: '.$email_from."\r\n". 

'Reply-To: '.$email_from."\r\n" . 

'X-Mailer: PHP/' . phpversion(); 

@mail($email_to, $email_subject, $email_message, $headers); 

?> 



<!-- include your own success html here --> 



Thank you for contacting us. We will be in touch with you very soon. 



<?php 

} 

?> 

如果你需要看本教程在它的全部,它位於:http://www.freecontactform.com/email_form.php 爲了使自定義的形式,它是很容易編輯HTML和相關的PHP的元素,但如果你不這樣做知道任何PHP等,我只是堅持預製的形式。

相關問題