我在 Raspberry Pi LAMP 服务器上运行我的 Bootstrap 网站,但收到“错误!”使用联系表单发送消息时,该表单使用 PHP Mail 的两个文件,并且联系表单位于主页上,代码如下:
index.html 上的联系表单:
<div class="col-sm-12">
<form class="form-horizontal" action="assets/php/contactForm.php" method="post" role="form" id="contactForm">
<div class="form-group">
<div class="col-sm-6">
<input type="text" name="name" class="form-control" placeholder="Name">
</div>
<div class="col-sm-6">
<input type="text" name="contactEmail" class="form-control" placeholder="Email">
</div>
</div>
<div class="form-group">
<div class="col-sm-12">
<textarea name="message" class="form-control" rows="8" placeholder="Message"></textarea>
</div>
</div>
<div class="form-group">
<div class="col-sm-12">
<button type="submit" class="btn btn-theme ladda-button" data-style="expand-left">
<span class="ladda-label">Submit</span>
</button>
</div>
</div>
</form>
contactForm.php
<?php
include("include/settings.php");
if(isset($_POST['name']) && isset($_POST['contactEmail']) && isset($_POST['message'])){
$name = $_POST['name'];
$from = $_POST['contactEmail'];
$message = $_POST['message'];
$subject = "Message from " . $name;
if (mail ($to, $subject, $message, $from)) {
$response = array('sent' => 1);
echo json_encode($response);
} else {
$response = array('sent' => 0);
echo json_encode($response);
}
}
?>
设置.php
<?php
// Contact
$to = '<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="4b333333333333330b23243f262a2227652824653e20" rel="noreferrer noopener nofollow">[email protected]</a>';
$subject = 'Contact Form from website';
?>
(出于隐私原因,仅出于此帖子的目的,电子邮件地址被删除并替换为 xxxxxxx)
知道为什么我收到“错误!”吗?什么时候使用表格?
最佳答案
您可以从 Pi 上的命令行测试以下内容
mail -s "Test Email" <a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="96eeeeeeeeeeeeeed6fef9e2fbf7fffab8f5f9b8e3fd" rel="noreferrer noopener nofollow">[email protected]</a> < /dev/null
检查 Pi 是否准备好发送邮件。如果没有,您可能需要安装某种邮件服务器(大多数指南都指向 postfix,但还有其他)。如果您确实想安装 postfix,请使用以下内容
sudo apt-get install postfix
此外,在/etc/php5/apache2/php.ini 文件中,检查 sendmail_path 选项的设置。
关于PHP 邮件无法使用 Ras Pi LAMP 服务器在网站上发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28762805/