PHP 邮件无法使用 Ras Pi LAMP 服务器在网站上发送

标签 php email raspberry-pi lamp

我在 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/

相关文章:

php - 使用column.name而不是column.phpName推进集合

php - 在 php 中编写代码的更简单方法“if ( $x == $a[1] || $x == $a[2] || $x == $a[3] ....)

php - Symfony2 未登录产品

c# - 发送 Gmail 电子邮件

php - Outlook 标题显示为乱码

python - 错误 252 : b"2. 1.5 发送一些邮件,我会尽力 f18sm1267047wiv.14"

linux - 树莓派 : wifi plus ethernet static IPs

python - 将远程原始代码转换为树莓派的十六进制代码

python - 如何将 picamera 视频帧转换为 openCV 对象

php - 用于 PDF 缩小的 ImageMagick 替代方案