首页 > 解决方案 > 如何在 PHP 联系表单中添加段落?

问题描述

我用 PHP 编写了一个联系表单,我想在发送的消息中包含段落,这样用户就必须写在某些段落中,而不仅仅是一个文本块。

我尝试将其拆分message为多个textareas,但我不知道应该如何调整 PHP 代码,以便这些代码以正确的顺序textareas在一个内发送。message每个人都textarea应该提出一个段落。

这是我的PHP:

<?php 
    $name = $_POST['name'];
    $email = $_POST['email'];
    $message = $_POST['message'];
    $from = 'From: mywebsite.com'; 
    $to = 'myemailadress@adress.com'; 
    $subject = 'subject line';
    $body = "From: $name\n E-Mail: $email\n Message:\n $message";

    $headers .= "MIME-Version: 1.0\r\n";
    $headers .= "Content-type: text/html\r\n";
    $headers .= 'From: '. $email. "\r\n" .
    $headers .= "Reply-To: ". $email. "\r\n";
    $headers .= "X-Mailer: PHP/" . phpversion();

    $status = mail($to, $subject, $message, $headers);

    if ($status) { 
        echo '<p style="color: white">Your Message was sent!</p>';
    } else { 
        echo '<p style="color: white">Something went wrong. Please try again.</p>'; 
    }
?>

这是我的 HTML:

<div class="contact-form">
    <form id="contact-form" method="post" action="contact-form-handler.php">
        <input name="name" type="text" class="form-control" placeholder="Your Name" required>
        <br>
        <input name="email" type="email" class="form-control" placeholder="Your Email">
        <br>
        <textarea name="message" class="form-control" placeholder="Message" rows="30" required></textarea><br>
        <input type="submit" class="form-control" value="SEND MESSAGE">
    </form>
</div>

标签: phphtmlemailcontact-form

解决方案


https://www.php.net/manual/en/function.nl2br.php

当您使用 nl2br 时,您可以将“\n”从 textarea 更改为“
”。您可以发送 content-type: text/plain mail 到并且不必将换行符转换为
标签。

我在您的代码中没有看到多个文本区域,所以我猜 nl2br 是您正在寻找的功能。


推荐阅读