手机领域正在打破我的联系方式
我想添加一个电话字段到联系人窗体,但是当我这样做,脚本停止工作,我不会收到一封电子邮件。手机领域正在打破我的联系方式
<?php
// check if fields passed are empty
if(empty($_POST['name']) ||
empty($_POST['email']) ||
empty($_POST['telephone']) ||
empty($_POST['message']) ||
!filter_var($_POST['email'],FILTER_VALIDATE_EMAIL))
{
echo "No se ha introducido toda la información.";
return false;
}
$name = $_POST['name'];
$email_from = $_POST['email'];
$telephone = $_POST['telephone'];
$message = $_POST['message'];
// create email body and send it
$to = '[email protected]'; // put your email
$email_subject = "Formulario de Contacto Con la Mochila al Hombro";
$email_body = "Has recibido un mensaje desde el formulario de contacto de la Web. \n\n".
"Aquí están los detalles:\n\n".
"Nombre: $name \n\n".
"Email: $email_from\n\n".
"Teléfono: $telephone\n\n".
"Mensaje: $message";
$headers = 'From: '.$email_from."\r\n".
'X-Mailer: PHP/' . phpversion();
mail($to,$email_subject,$email_body,$headers);
return true;
?>
这是我使用的HTML:
<div class="control-group">
<div class="controls">
<input type="phone" class="form-control" placeholder="Teléfono" id="telephone" required data-validation-required-message="Por favor, dinos tu teléfono para que podamos contactar contigo." />
</div>
</div>
的形式,如果我不把电话在PHP脚本,但只要我添加它,它工作完全正常停止工作。我假设我设置了一些错误的值,但我真的不知道对PHP很重要。
我现在认为它是与AJAX验证出现问题script.You可以看到脚本住在这里http://talleresnaj2.com/js/contacto.min.js
您<input />
没有name
属性,因此它的价值永远不会发送到PHP脚本,使empty($_POST['telephone'])
返回true。
您只需要在您的input
中添加name="telephone"
即可。
您忘记添加输入名称。
尝试
<input name="telephone" type="phone" class="form-control" placeholder="Teléfono" id="telephone" required data-validation-required-message="Por favor, dinos tu teléfono para que podamos contactar contigo." />
所以你认为剧本因此而破裂? –
他正在检查“电话”字段是否为空。如果它不在那里,则该语句将返回“true”。在他的陈述中,这表明它会“返回虚假”。所以它打破了。 – Axel
他正在使用ajax –
你忘了给它一个'name'属性:'NAME = “电话”'。现在它会一直是空的,当你检查它。 – jeroen
就是这样。我没有任何控制组中的名称属性,它们仍然正常工作。无论如何,我做到了,但我仍然无法收到我的电子邮件中的信息。 @ jeroen aAny其他的想法? –
如果您使用ajax发布表单,则还应该将javascript添加到您的问题中。 – jeroen