php - 创建联系表格

标签 php html

我在使用网站时遇到联系表单问题。我运行发送邮件代码的 php 文件不起作用。当用户单击提交按钮时,它会在屏幕上显示代码并且不会发送电子邮件。

HTML

<header class="body1">
</header>

<section class="body1">
</section>

<footer class="body1">
</footer>

<form method="post" action="index.php">
<h2>Envie uma mensagem ou faça um pedido</h2>
<label>Nome:</label>
<input name="name" placeholder="Digite seu nome...">

<label>Email:</label>
<input name="email" type="email" placeholder="Digite seu email...">

<label>Mensagem:</label>
<textarea name="message" placeholder="Digite sua mensagem..."></textarea>

<input id="submit" name="submit" type="submit" value="submit">

</form>

PHP

<?php
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$from = 'De: Babylon Store'; 
$to = 'my@email.com'; 
$subject = 'Novo pedido';

$body = "De: $name\n E-Mail: $email\n Message:\n $message";

if ($_POST['submit']) {
if (mail ($to, $subject, $body, $from)) { 
    echo '<p>Sua mensagem foi enviada!</p>';
} else { 
    echo '<p>Aconteceu algo errado. Por favor tente novamente!</p>'; 
}
}

?>

最佳答案

我自己尝试了这些代码,但它不起作用。

从未使用过:if(mail),尝试使用ma​​il($to, $subject, $body, $from)

尽管如此,您当前使用的联系表一点也不安全。许多机器人可以自动提交表单并向您发送大量垃圾邮件。防止这些的方法是使用安全验证码验证,完全阻止这些机器人提交您的表单。如果您对安全表格感兴趣,请与我联系,因为我会为您写一个免费 :)

我知道有一种方法可以使用 if(mail) 语句来处理邮件,但是有许多脚本(例如 PHPMailer)可以轻松地为您完成这项工作。如果您在 Web 服务器上处理此联系表单,那么它很可能是在他们的托管配置错误中。如果您使用的是本地主机(例如:WAMP),请尝试这样做以确保它是否可以在您自己设置的服务器上运行,如果可以,则很可能是您当前运行的网络服务器出现故障。

PS: I'm a PHP Script Developer, developed more than 25 scripts.

关于php - 创建联系表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31149738/

相关文章:

php - 在 SELECT WHERE 查询 MYSQL 中使用增量值

php - 我如何使用与 Laravel 的关系?

javascript - PHP 将 html 放入 Twig 变量中?

html - 如何在 div 的左侧和右侧设置 HR 样式?

php - 在 PHP 中使用 html5lib 的 Xpath

PHP 提及脚本

javascript - 如何在单击复选框时激活下拉菜单

javascript - 当 html 文件中遇到 &lt;script&gt; 标签时会发生什么?

jquery - 在 css 中添加 href 链接到 <a> 标签

html - 如何在不在父 div 中应用 float 或不在 div 中添加 clear both 的情况下创 build 计?