电话领域正在破坏我的联系表格

时间:2016-11-09 13:12:21

标签: php contact contact-form

我正在尝试将电话字段添加到联系表单中,但是当我这样做时,脚本会停止工作,而且我没有收到电子邮件。

    <?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 = 'h.........@gmail.com'; // 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验证脚本的一个问题。你可以在这里看到脚本http://talleresnaj2.com/js/contacto.min.js

2 个答案:

答案 0 :(得分:1)

您的<input />没有name属性,因此其值永远不会发送到PHP脚本,从而使empty($_POST['telephone'])返回true。

您只需在name="telephone"中添加input

答案 1 :(得分:0)

您忘记添加输入名称。

尝试

<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." />