html电子邮件的表单,HTML Form To Email

这篇博客提供了一种使用HTML和PHP创建基本反馈表单的方法。当访客提交表单时,PHP脚本会将表单内容发送到管理员邮箱。包括下载的.zip文件中有反馈表单、发送邮件脚本、感谢页面和错误消息页面。安装过程涉及更改邮箱地址、上传文件并定制表单样式。此外,还提供了检查邮件注入和错误处理的PHP代码。
摘要由CSDN通过智能技术生成

HTML Form To Email

Use the following HTML code to create a basic feedback form that sends you an email when submitted. When a visitor submits this form, the PHP script will generate an email to the webmaster containing the contents of the completed form.

The PHP script is a basic script but it works well. Because of its simplicity, it is very easy to follow. Feel free to customize the code for your own purposes.

View Example

The following code creates this feedback form.

To get the code for this feedback form, download the zip file below.

Download

This is the quickest way to get the form to email script. Simply download the .zip file, customize the files, and you're done.

This .zip file consists of four files:

The feedback form

The "send mail" script

A "Thank you" page

An error message page

All four files are required to create the working feedback form.

Installation:

Once you've downloaded the .zip file above, do the following:

Extract all four files to a directory located within your website (on your local machine). If you don't have a copy of your website on your local machine, any directory will do for now, as long as you upload all files to your hosting provider after the following steps.

Open send_mail.php and find the line that reads $webmaster_email = "name@example.com"; (at the top of the file). Change the name@example.com email address to your own email address (or where ever the form contents should be emailed to).

Once you have checked that the form works on your server, customize the look and feel of feedback_form.html, thank_you.html, and error_message.html to suit your website.

If you change the names of the files, be sure to update the PHP script to reflect the new names.

Also, if you are familiar with HTML/PHP, you could combine the code from all four files into one PHP file. However, this would require substantial modification so, unless you know what you're doing, keep them as four separate files.

If you can't download or access the .zip file, see below.

Modify Your Feedback Form

You can change the look of your feedback form by adding styles to it. Check out these comment boxes to change the color of your feedback form, add a background picture, or add a border to your comment box.

Can't Download The .Zip File?

If you can't download or access the .zip file above, you can copy and paste the code below. Make sure you change the email address at the top of send_mail.php (as per installation instructions above).

The Feedback Form:

Save this code into a file called feedback_form.html

Note that this feedback form includes HTML table code for formatting purposes.

Feedback Form

Feedback Form

First Name

Email

Comments

Submit the form

The "Send Mail" Script

This script has been written in PHP. Your web server will need to support PHP to run this. If you're not sure, upload it and see if it works. Most hosting plans support PHP these days.

Save this code as send_mail.php.

If you change the name of any of the other files, be sure to update this script - the names of those files are included in this script.

If you decide to add some fields to your feedback form, you will need to add them to this script too.

/*

This first bit sets the email address that you want the form to be submitted to.

You will need to change this value to a valid email address that you can access.

*/

$webmaster_email = "name@example.com";

/*

This bit sets the URLs of the supporting pages.

If you change the names of any of the pages, you will need to change the values here.

*/

$feedback_page = "feedback_form.html";

$error_page = "error_message.html";

$thankyou_page = "thank_you.html";

/*

This next bit loads the form field data into variables.

If you add a form field, you will need to add it here.

*/

$email_address = $_REQUEST['email_address'] ;

$comments = $_REQUEST['comments'] ;

$first_name = $_REQUEST['first_name'] ;

$msg =

"First Name: " . $first_name . "\r\n" .

"Email: " . $email_address . "\r\n" .

"Comments: " . $comments ;

/*

The following function checks for email injection.

Specifically, it checks for carriage returns - typically used by spammers to inject a CC list.

*/

function isInjected($str) {

$injections = array('(\n+)',

'(\r+)',

'(\t+)',

'(%0A+)',

'(%0D+)',

'(%08+)',

'(%09+)'

);

$inject = join('|', $injections);

$inject = "/$inject/i";

if(preg_match($inject,$str)) {

return true;

}

else {

return false;

}

}

// If the user tries to access this script directly, redirect them to the feedback form,

if (!isset($_REQUEST['email_address'])) {

header( "Location: $feedback_page" );

}

// If the form fields are empty, redirect to the error page.

elseif (empty($first_name) || empty($email_address)) {

header( "Location: $error_page" );

}

/*

If email injection is detected, redirect to the error page.

If you add a form field, you should add it here.

*/

elseif ( isInjected($email_address) || isInjected($first_name) || isInjected($comments) ) {

header( "Location: $error_page" );

}

// If we passed all previous tests, send the email then redirect to the thank you page.

else {

mail( "$webmaster_email", "Feedback Form Results", $msg );

header( "Location: $thankyou_page" );

}

?>

The "Thank You" Page

Save this code into a file called thank_you.html

Thank You

Thanks for your feedback!

We appreciate that you took the time to send us feedback. Your feedback has been sent to the webmaster.

Back to feedback form.

The Error Page

Save this code into a file called error_message.html

Error

Oops!

Please ensure you have completed all fields before submitting the form.

Also ensure that there is only one email address.

Back

Problems Sending Mail?

If, after installing this script, it doesn't seem to be sending emails:

If you are running the script from your own computer, check that you have PHP installed and that it is configured to send mail.

If you are running the script from your hosting provider's server (i.e. your website is hosted with a hosting provider), check with them to find out why the mail isn't being sent.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值