使用PHP发送电子邮件
我希望通过联系人表单将电子邮件发送到我的电子邮件地址。在表单上,客户将输入他们的姓名、电子邮件地址和消息。但是,当电子邮件发送到我的地址时,我只能看到用户的meessage。 如何使客户的姓名、电子邮件地址和消息显示在电子邮件中使用PHP发送电子邮件,php,html,email,Php,Html,Email,我希望通过联系人表单将电子邮件发送到我的电子邮件地址。在表单上,客户将输入他们的姓名、电子邮件地址和消息。但是,当电子邮件发送到我的地址时,我只能看到用户的meessage。 如何使客户的姓名、电子邮件地址和消息显示在电子邮件中 if (empty($_POST) === false) { $errors = array(); $name = $_POST['name']; $email = $_POST['email']; $message
if (empty($_POST) === false) {
$errors = array();
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
if (empty($name) === true || empty($email) === true || empty($message) === true) {
$errors [] = 'Name ,email and message are required !';
} else {
if (filter_var($email, FILTER_VALIDATE_EMAIL) === false) {
$errors[] = 'That\'s not a valid email address';
}
if (ctype_alpha ($name) === false) {
$errors[] = 'Name must only contain Letters';
}
}
if (empty($errors) === true) {
mail('someone@hotmail.com', 'Contact form', $message, 'From: ' . $email);
header('Location: index.php?sent');
exit();
}
}
<!DOCTYPE html>
<html>
<head>
<title>A contact form</title>
</head>
<body>
<?php
if (isset($_GET['sent']) === true) {
echo '<p>Thanks for Contacting us !</p>';
} else {
if (empty($errors) === false) {
echo '<ul>';
foreach ($errors as $error) {
echo '<li>', $error, '</li>' ;
}
echo'</ul>';
}
?>
<form action="" method="post">
<p>
<label for="name">Name:</label><br>
<input type="text" name="name" id="name" <?php if (isset($_POST['name']) === true) {echo 'value="', strip_tags($_POST['name']), '"'; } ?>>
</p>
<p>
<label for="email">Email:</label><br>
<input type="text" name="email" id="email" <?php if (isset($_POST['email']) === true) {echo 'value="', strip_tags($_POST['email']), '"'; } ?>>
</p>
<p>
<label for="message">Message</label><br>
<textarea name="message" id="message"><?php if (isset($_POST['message']) === true) {echo strip_tags($_POST['message']); } ?></textarea>
</p>
<p>
<input type="submit" value="Submit">
</p>
</form>
<?php
}
?>
</body>
</html>
<?php
if (empty($_POST) === false) {
$errors = array();
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
if (empty($name) === true || empty($email) === true || empty($message) === true) {
$errors [] = 'Name ,email and message are required !';
} else {
if (filter_var($email, FILTER_VALIDATE_EMAIL) === false) {
$errors[] = 'That\'s not a valid email address';
}
if (ctype_alpha ($name) === false) {
$errors[] = 'Name must only contain Letters';
}
}
if (empty($errors) === true) {
$headers = 'From: ' . $name . ' <' . $email . '>';
// Create the new message to send with the name and email.
$newMessage = 'Name: ' . $name . '<br/>';
$newMessage .= 'Email: ' . $email . '<br/>';
$newMessage .= $message;
mail('someone@hotmail.com', 'Contact form', $newMessage, $headers);
header('Location: index.php?sent');
exit();
}
}
?>
if(空($\u POST)==false){
$errors=array();
$name=$_POST['name'];
$email=$_POST['email'];
$message=$_POST['message'];
if(empty($name)==true | | empty($email)==true | | empty($message)==true){
$errors[]=“需要姓名、电子邮件和消息!”;
}否则{
if(filter\u var($email,filter\u VALIDATE\u email)==false){
$errors[]='这不是有效的电子邮件地址';
}
if(ctype_alpha($name)==false){
$errors[]=“名称必须仅包含字母”;
}
}
if(空($errors)==true){
邮件('someone@hotmail.com“,”联系方式“,$message”,“发件人:”。$email);
标题('Location:index.php?sent');
退出();
}
}
联系方式
名称:
>
消息
您可以将消息参数编辑得更长,并包含更多信息。您甚至可以将其设置为html
i、 e。
第4节根据php手册:
至
:一个或多个邮件接收人
此字符串的格式必须符合»。一些
例如:
示例1:
bool mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )
<?php
mail("john doe <nobody@example.com>", "my subject", "my message")
?>
<?php
$to = 'john doe <nobody@example.com>';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" .
'Reply-To: webmaster@example.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
?>
示例2:
bool mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )
<?php
mail("john doe <nobody@example.com>", "my subject", "my message")
?>
<?php
$to = 'john doe <nobody@example.com>';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" .
'Reply-To: webmaster@example.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
?>
只需在邮件中添加姓名和电子邮件即可。我们在PHP邮件中一直使用这种方法。请参阅下面的
$newMessage
变量。它包含的邮件的名称和电子邮件添加到它的顶部,以便于参考
如果将$headers
变量创建为数组或字符串(取决于您将拥有的额外参数的数量),则更容易查看您正在执行的操作。我在这里的做法是,您将在电子邮件的“发件人”部分看到人员姓名
if (empty($_POST) === false) {
$errors = array();
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
if (empty($name) === true || empty($email) === true || empty($message) === true) {
$errors [] = 'Name ,email and message are required !';
} else {
if (filter_var($email, FILTER_VALIDATE_EMAIL) === false) {
$errors[] = 'That\'s not a valid email address';
}
if (ctype_alpha ($name) === false) {
$errors[] = 'Name must only contain Letters';
}
}
if (empty($errors) === true) {
mail('someone@hotmail.com', 'Contact form', $message, 'From: ' . $email);
header('Location: index.php?sent');
exit();
}
}
<!DOCTYPE html>
<html>
<head>
<title>A contact form</title>
</head>
<body>
<?php
if (isset($_GET['sent']) === true) {
echo '<p>Thanks for Contacting us !</p>';
} else {
if (empty($errors) === false) {
echo '<ul>';
foreach ($errors as $error) {
echo '<li>', $error, '</li>' ;
}
echo'</ul>';
}
?>
<form action="" method="post">
<p>
<label for="name">Name:</label><br>
<input type="text" name="name" id="name" <?php if (isset($_POST['name']) === true) {echo 'value="', strip_tags($_POST['name']), '"'; } ?>>
</p>
<p>
<label for="email">Email:</label><br>
<input type="text" name="email" id="email" <?php if (isset($_POST['email']) === true) {echo 'value="', strip_tags($_POST['email']), '"'; } ?>>
</p>
<p>
<label for="message">Message</label><br>
<textarea name="message" id="message"><?php if (isset($_POST['message']) === true) {echo strip_tags($_POST['message']); } ?></textarea>
</p>
<p>
<input type="submit" value="Submit">
</p>
</form>
<?php
}
?>
</body>
</html>
<?php
if (empty($_POST) === false) {
$errors = array();
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
if (empty($name) === true || empty($email) === true || empty($message) === true) {
$errors [] = 'Name ,email and message are required !';
} else {
if (filter_var($email, FILTER_VALIDATE_EMAIL) === false) {
$errors[] = 'That\'s not a valid email address';
}
if (ctype_alpha ($name) === false) {
$errors[] = 'Name must only contain Letters';
}
}
if (empty($errors) === true) {
$headers = 'From: ' . $name . ' <' . $email . '>';
// Create the new message to send with the name and email.
$newMessage = 'Name: ' . $name . '<br/>';
$newMessage .= 'Email: ' . $email . '<br/>';
$newMessage .= $message;
mail('someone@hotmail.com', 'Contact form', $newMessage, $headers);
header('Location: index.php?sent');
exit();
}
}
?>
姓名、地址和信息应如何显示?比如“来自:彼得·帕克·彼得”-parker@gmail.com"? 请更具体地说明您想要实现的目标。正确地输入参数,并将其他值附加到$message字符串中。有关发送的信息,请参见阅读mail()
文档开始-“如何使客户端名称、电子邮件地址和消息显示在电子邮件中?”。。。通过将客户的姓名和电子邮件地址附加到邮件中。