为什么赢了';我的HTML/PHP表单不能工作吗?

为什么赢了';我的HTML/PHP表单不能工作吗?,php,html,webforms,Php,Html,Webforms,好的,我用HTML制作了一个表单,我想让它将信息提交到我的电子邮件中,所以我找到并修改了这个PHP脚本: <?php $to = "me@myemail.com"; $subject = "R&R Form"; $firstname1 = $_REQUEST['firstname1'] ; $lastname1 = $_REQUEST['lastname1'] ; $firstname2 = $_REQUEST['firstname2'] ; $lastname2 = $_REQU

好的,我用HTML制作了一个表单,我想让它将信息提交到我的电子邮件中,所以我找到并修改了这个PHP脚本:

<?php
$to = "me@myemail.com";
$subject = "R&R Form";
$firstname1 = $_REQUEST['firstname1'] ;
$lastname1 = $_REQUEST['lastname1'] ;
$firstname2 = $_REQUEST['firstname2'] ;
$lastname2 = $_REQUEST['lastname2'] ;
$department1 = $_REQUEST['department1'] ;
$department2 = $_REQUEST['department2'] ;
$reason = $_REQUEST['reason'] ;
$behaviour1 = $_REQUEST['behaviour1'] ;
$behaviour2 = $_REQUEST['behaviour2'] ;
$behaviour3 = $_REQUEST['behaviour3'] ;
$behaviour4 = $_REQUEST['behaviour4'] ;
$behaviour5 = $_REQUEST['behaviour5'] ;
$behaviour6 = $_REQUEST['behaviour6'] ;
$behaviour7 = $_REQUEST['behaviour7'] ;

$message = "Nominee: $firstname1 $lastname1 /n Department: $department1 /n /n Nominator: $firstname2 $lastname2 /n Department: $department2 /n /n Reason for nomination: $reason /n /n Additional reasons: $behaviour1 /n $behaviour2 /n $behaviour3 /n $behaviour4 /n $behaviour5 /n $behaviour6 /n $behaviour7 /n";

$headers = "Recognition and Reward Request for $firstname1 $lastname1";
$sent = mail($to, $subject, $message, $headers,) ;
if($sent)
{print "Your nomination was submitted successfully"; }
else
{print "We encountered an error submitting your nomination"; }
?>

我知道它写得不是很好(我今天才开始学习php,我只是修改了一个复制粘贴的脚本),但它似乎没有任何语法错误或其他我能看到的错误。我不是要求有人帮我修改代码,我只是要求一些关于为什么脚本不能正常工作的指针


我把它上传到安装了PHP的服务器上,所以这不是问题所在。我一整天都在想这个问题,现在有点沮丧了。有人请帮忙吗?

既然你是初学者,我建议你尽量用梨

看:pearhtmlquickform

这会让你的生活更轻松

对于发送电子邮件,我建议您使用:PHPMailer


它附带了许多即时可用的电子邮件功能

,因为您是初学者,我建议您尽可能多地使用PEAR

看:pearhtmlquickform

这会让你的生活更轻松

对于发送电子邮件,我建议您使用:PHPMailer


它附带了许多即时可用的电子邮件功能

我看到的第一个问题是,
$headers
不包含有效的头。标题是类似以下内容的
:name@example.com
CC:someoneelse@example.com
,但您将其视为电子邮件的一部分


以下是有关的一些信息。

我看到的第一个问题是,
$headers
不包含有效的头。标题是类似以下内容的
:name@example.com
CC:someoneelse@example.com
,但您将其视为电子邮件的一部分


以下是有关的一些信息。

嗯,脚本将此用于标题,这是无效的:

$headers = "Recognition and Reward Request for $firstname1 $lastname1";
也许你想把它作为主题

标头应为有效的SMTP标头,如下所示:

$headers = 'From: webmaster@example.com' . "\r\n";
$sent = mail($to, $subject, $message, $headers) ;

查看示例以了解更多信息。

好吧,脚本将此用于标题,这是无效的:

$headers = "Recognition and Reward Request for $firstname1 $lastname1";
$sent = mail($to, $subject, $message, $headers,) ;
也许你想把它作为主题

标头应为有效的SMTP标头,如下所示:

$headers = 'From: webmaster@example.com' . "\r\n";
$sent = mail($to, $subject, $message, $headers) ;
查看示例以了解更多信息

$sent = mail($to, $subject, $message, $headers,) ;
应该是这样的:

$headers = 'From: webmaster@example.com' . "\r\n";
$sent = mail($to, $subject, $message, $headers) ;
(不带逗号)

希望我能帮忙

应该是这样的:

$headers = 'From: webmaster@example.com' . "\r\n";
$sent = mail($to, $subject, $message, $headers) ;
(不带逗号)


希望我能帮上忙,它确实有语法错误。由于您无法看到它们,我建议您启用完整的错误报告。有很多方法可以做到这一点;最简单的方法可能是在脚本顶部添加以下代码:

<?php

ini_set('display_errors', true);
error_reporting(E_ALL);

?>

它确实有语法错误。由于您无法看到它们,我建议您启用完整的错误报告。有很多方法可以做到这一点;最简单的方法可能是在脚本顶部添加以下代码:

<?php

ini_set('display_errors', true);
error_reporting(E_ALL);

?>