基于this solution,我已经为landing page创建了一个表单,我希望它能正常工作,但是我看不到失败的地方,因为没有任何反应(没有发送邮件,没有回声))。
PHP(form.php):
<?php
if (isset($_POST['submit'])) {
$to = "my@email.com";
$from = $email;
$first_name = $_POST['first_name'];
$phone = $_POST['phone'];
$email = $_POST['email'];
$subject = "Nuevo lead";
$message = $first_name . " " . $phone . " " . $email . " wrote the following:" . "\n\n";
$headers = "From:" . $from;
mail($to, $subject, $message, $headers);
echo "Mail Sent. Thank you " . $first_name . ", we will contact you shortly.";
}
?>
HTML:
<form action="form.php" method="post" id="mc-embedded-subscribe-form"
name="mc-embedded-subscribe-form" class="validate">
<div id="mc_embed_signup_scroll">
<div class="flex-md-wrap">
<div class="mc-field-group flex-md-1">
<input type="text" value="" name="first_name" id="mce-FNAME" placeholder="Nombre" autocomplete='given-name'>
</div>
<div class="mc-field-group flex-md-1">
<input type="email" value="" name="email" id="mce-EMAIL" placeholder="Email" autocomplete='email'>
</div>
<div class="mc-field-group flex-md-1">
<input type="number" value="" name="phone" id="mce-PHONE" placeholder="Teléfono" autocomplete='tel'>
</div>
<div class="mc-field-group">
<input type="submit" value="ENVIAR" name="submit" id="mc-embedded-subscribe" class="btn btn--secondary">
</div>
</div>
</div>
</form>
有人知道发生了什么吗?
答案 0 :(得分:1)
您的表单提交似乎正常,但是由于您未启用错误报告功能,因此您看不到 {strong> $email
变量的未定义变量问题,我认为这是导致您出现问题的原因
要启用错误报告,请在form.php文件顶部添加此行。
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
也将此行$from = $email;
移到$email = $_POST['email'];
之后
$email = $_POST['email'];
$from = $email;
答案 1 :(得分:0)
我去了你的网站。点击链接会通过开发人员工具返回404错误,并显示以下消息:
未找到
请求的URL /form.php&c=jQuery19008959887418623141_1563041041943&first_name=Geoger+&email=bill@bigboy.com&phone=3&submit=ENVIAR 在此服务器上找不到。
错误是不言自明的-要么您没有创建文件,它的名称错误,在服务器要查找的错误文件夹中,您的路由未指向正确的文件/路径,等等。您在该页面上的表单正在运行,按钮正在运行。
虽然您的代码可能是正确的,并且您可能已经完美地遵循了该解决方案,但是您不仅需要代码,还需要更多的内容-您需要后端PHP背后的基础结构,并正确地进行所有连接。即使代码完美,如果服务器找不到文件,它也将始终“不执行任何操作”。
顺便说一句,您的站点看起来很棒,只需要对我认为的那些基础设施点进行一些研究即可。