【问题标题】:PHP email is sent, but it doesn't include the messagePHP 电子邮件已发送,但不包含该消息
【发布时间】:2018-09-13 02:30:40
【问题描述】:

我正在尝试为联系页面构建电子邮件表单。一切顺利,电子邮件已发送。除了是垃圾邮件(我将通过服务器解决)之外,电子邮件不包含任何消息或可以说的内容。它有主题,但没有标题和消息。这是它的代码:

<?php
$phpSelf = filter_input(INPUT_SERVER, 'PHP_SELF', FILTER_SANITIZE_URL);
        echo '
        <form action="'.$phpSelf.'" method="post" class="formular" name="formular-contact">
        <div class="info-client">
        <p class="info-client">Doriti sa ne contactati?</p>
            <div class="informatie">
                <p>Nume:</p><br>
                <input type="text" name="nume">
            </div>
            <div class="informatie">
            <p>Prenume:</p> <br>
            <input type="text" name="prenume">
            </div>
            <div class="informatie">
                <p>Email:</p> <br>
                <input type="text" name="email">
            </div>
            <div class="informatie">
                <p>Mesaj:</p> <br>
            </div>
            <textarea rows="7" cols="82" name="mesaj" id="styled" form="formular-contact"></textarea>
            <input type="submit" value="Trimiteti">
        </div>
        </form> ';
if((isset($_POST['nume'])) && !empty($_POST['nume'])) {
    $nume = $_POST['nume'];
}
if((isset($_POST['prenume'])) && !empty($_POST['prenume'])) {
    $prenume = $_POST['prenume'];
}
if((isset($_POST['email'])) && !empty($_POST['email'])) {
    $email = $_POST['email'];
}
if((isset($_POST['mesaj'])) && !empty($_POST['mesaj'])) {
    $mesaj = $_POST['mesaj'];
}
$mesaj = wordwrap($mesaj,70);
mail("contact-email@hotmail.com","$email;$nume$prenume",$mesaj);
?>

我知道这是基本的,我会为空字段等添加一些验证,但我想先正确发送电子邮件。有点洞察力,我正在使用一个包含上面代码的网页。这就是为什么我有 html 表单和 php 代码的原因。如果有更好的方法,我真的很想知道。谢谢!

【问题讨论】:

  • $_POST['mesaj'] 是否已填充?不需要isset!empty勾选,!empty就够了,一定要设置不为空。
  • 所以我使用了firefox,什么时候联网,点击刷新并寻找POST方法。什么时候到它的参数,没有消息。我认为 textarea 正在发挥作用。
  • @TakeDown 提交时您在文本字段中输入了什么?
  • 随机的几个字母。我有时会放一些更合乎逻辑的东西,比如“测试”。
  • @TakeDown 没问题!我发布了一个描述这个的答案。如果它解决了你的问题,你能接受它来结束问题吗?

标签: html forms


【解决方案1】:

问题是因为textarea 中的form 属性。如果元素在您提交的表单之外,您应该只使用form 属性。

例如:

 <textarea rows="7" cols="82" name="mesaj" id="styled"></textarea>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多