我遇到的问题是电子邮件的邮件部分。电子邮件发送得很好,大纲就在那里但是没有从变量打印出姓名电子邮件或消息。我似乎无法看到问题所在。任何帮助表示赞赏。
<?php session_start();
$name=$_POST['name'];
$email=$_POST['email'];
$text=$_POST['text'];
$to= 'noreply@noreply.com';
$subject = 'Request';
$message='Hello, my name is:' . $name . "\r\n" . 'My Email is: ' . $email . "\r\n" . 'My Message is: '. $text;
$headers = 'From: Request' . "\r\n" .
'Reply-To: noreply@noreply.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
echo 'Mail Sent';
?>
答案 0 :(得分:0)
从评论中,您将数据作为查询字符串传递,而不是POST中的有效负载。如此改变
$name=$_POST['name'];
$email=$_POST['email'];
$text=$_POST['text'];
到
$name=$_GET['name'];
$email=$_GET['email'];
$text=$_GET['text'];
应该有用!
答案 1 :(得分:0)
您使用GET
方法发送了表单,数据位于$_GET
:
<?php
session_start();
$name = $_GET['name']; // here
$email = $_GET['email']; // here
$text = $_GET['text']; // here
$to = 'noreply@noreply.com';
$subject = 'Request';
$message='Hello, my name is:' . $name . "\r\n" . 'My Email is: ' . $email . "\r\n" . 'My Message is: '. $text;
$headers = 'From: Request' . "\r\n" .
'Reply-To: noreply@noreply.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
echo 'Mail Sent';
?>
要使用您当前的脚本版本,只需更改method
中的form
属性即可发布,例如<form method=post ...>