Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
验证无效的Php联系人表单_Php_Html_Forms - Fatal编程技术网

验证无效的Php联系人表单

验证无效的Php联系人表单,php,html,forms,Php,Html,Forms,您好,我创建了此联系人表单以发送消息 我读了很多遍,没有发现任何错误。有小费吗 当我按下“enviar”(发送)时,什么也没有发生。我已经创建了一个与“主题”(“assto”)相关的新表单选项字段。 注:请忽略“mail@mail.com.br“,在我的测试中,我使用的是真实的 希望你能帮忙 这是我在表单标记之前插入的PHP代码。这是我在这里看到的代码,但我已将其更改为适用于我的站点。 <?php $page = 'Contact'; $to = "mail@mail.com

您好,我创建了此联系人表单以发送消息
我读了很多遍,没有发现任何错误。有小费吗
当我按下“enviar”(发送)时,什么也没有发生。我已经创建了一个与“主题”(“assto”)相关的新表单选项字段。
注:请忽略“mail@mail.com.br“,在我的测试中,我使用的是真实的

希望你能帮忙

这是我在表单标记之前插入的PHP代码。这是我在这里看到的代码,但我已将其更改为适用于我的站点。

<?php $page = 'Contact'; 


    $to = "mail@mail.com.br"; 
    //$subject = "Company - Contato"; 

    if (isset($_POST['submit'])) { 

        // Error Checking 
        $errors = array(); 

        // Name Check 
        if (empty($_POST['name'])) { 
            $errors[] = 'Preencha corretamente o campo nome.'; 
        } 

        // Email Check 
        if (empty($_POST['email'])) { 
            $errors[] = 'Preencha corretamente o campo email.'; 
        } 

        // Assunto Check 
        if (empty($_POST['assunto'])) { 
            $errors[] = 'Preencha corretamente o campo assunto.'; 
        } 

        // Message check 
        if (empty($_POST['message'])) { 
            $errors[] = 'Preencha corretamente o campo mensagem'; 
        } 

        // If no errors - send email 
        if (empty($errors)) { 

            $name           = htmlentities($_POST['name']); 
            $email          = htmlentities($_POST['email']); 
            $assunto        = htmlentities($_POST['assunto']); 

            $subject = 'Company - Contato'; 

            $headers  = "From: $email" . "\r\n"; 
            $headers .= "Reply-To: $email" . "\r\n"; 
            $headers .= "MIME-Version: 1.0\r\n"; 
            $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n"; 

            $message = $_POST['message'];

            $message = '<html><body>'; 
            $message .= "<br />"; 
            $message .= "<br />"; 
            $message .= '<div style="font: 14px Arial, sans-serif; color: #333;">'; 
            $message .= "<b>Nome:</b> $name" . "\r\n"; 
            $message .= "<br />"; 
            $message .= "<b>Email:</b> $email" . "\r\n"; 
            $message .= "<br />"; 
            $message .= "<b>Assunto:</b> $assunto" . "\r\n"; 
            $message .= "<br />"; 
            $message .= "<b>Mensagem:</b>"; 
            $message .= "<br />"; 
            $message .= $_POST['message']; 
            $message .= "<br />"; 
            $message .= '</div>'; 
            $message .= "</body></html>"; 

            // Send Email 
            mail($to,$subject,$message,$headers); 

            // Set sent variable to allow sent message to be displayed 
            $sent = 'Sent'; 

        } 

    } 
    ?> 

    <?php if (!empty($errors)) { ?> 
        <div class="error"> 
            <ul> 
                <?php 

                foreach ($errors as $error) { 
                    echo '<li>'.$error.'</li>'; 
                } 

                ?> 
            </ul> 
        </div> 
    <?php } ?> 

    <?php if(isset($sent)) { ?> 
        <div class="success"> 
            <p>Sua mensagem foi enviada com sucesso.</p>
        </div> 
    <?php } ?>

成功的环境管理



下面我插入了表单本身。如你所见,我使用了相同的“名称”,但它不起作用/

    <form name="htmlformContato" class="form-horizontal"  action="" accept-charset="UTF-8" method="post">


    <div class="col-sm-6 col-xs-12">

              <div class="form-group col-sm-12">
              <label for="inputNome" class="control-label">Nome *</label>
              <input id="inputNome" type="text" class="form-control" name="name" value="<?php echo $_POST['name']; ?>" />
              </div> 

              <div class="form-group col-sm-12">
              <label for="inputEmail" class="control-label">Email *</label>
              <input id="inputEmail" type="text" class="form-control" name="email" value="<?php echo $_POST['email']; ?>" />
              </div>


              <div class="form-group col-sm-12">
              <label for="inputAssunto" class="control-label">Assunto *</label>
              <select class="form-control" name="assunto">
                <option value="SelecioneAssunto">Selecione o assunto</option>
                <option value="Duvidas">Dúvidas</option>
                <option value="Sugestoes">Sugestões</option>
                <option value="Reclamacoes">Reclamações</option>
                <option value="Outro">Outro</option>
              </select>
              </div>                                  

    </div>


    <div class="col-sm-6 col-xs-12">

              <div class="form-group col-sm-12">
              <label for="inputMensagem" class="control-label">Mensagem *</label>
              <textarea class="form-control" rows="9" id="inputMensagem" name="message"><?php echo $_POST['message']; ?></textarea>
              </div>

    </div>

    <div class="col-xs-12">

              <div class="form-group col-xs-12">          
              <button type="submit" class="btn btn-bodyupA">Enviar</button>          
              </div>

    </div>          

    </form>                                                     

诺姆*
羡慕
Enviar
应该是:

<input type="submit" value="Enviar" class="btn btn-bodyupA">   

Enviar
应该是:

<input type="submit" value="Enviar" class="btn btn-bodyupA">   

如果您使用
输入
按钮
并不重要,只要它们有
type=“submit”
,但是您必须设置
名称
,因为您有
if(isset($\u POST['whatevername'){

Enviar


两种方法都可以


如果您使用
输入
按钮
并不重要,只要它们有
type=“submit”
,但是您必须设置
名称
,因为您有
if(设置($\u POST['whatevername')){

Enviar


两种方法都可以

添加name=“提交”

Enviar
添加name=“提交”

Enviar

实际上,标签“button”不是问题所在,因为它是一个引导标签。无论如何,我已经为输入更改了它,并且发生了任何事情。@Alexandre两种方式都不会因为name属性而发生任何事。您的块被
if(isset($\u POST['submit'])包围。
但不存在具有提交名称的字段实际上是标签“button”这不是问题,因为它是一个引导标记。无论如何,我已经为输入更改了它,并且发生了任何事情。@Alexandre两种方式都不会因为name属性而发生任何事情。您的块被
if(isset($\u POST['submit'])包围
但不存在提交名称的字段,我认为他使用的是按钮,因为他有CSS,可以将规则应用于button类型的所有HTML元素,如果是
input type=button
,我认为这不起作用。如果wrong@RoyalBg只是想澄清一下,他们都按预期工作,并提交了表格。添加名称解决了这个问题m!:)现在一切正常。测试和工作。两个选项都有效,输入或按钮。我还将字符集更改为UTF-8,以便可以使用特殊字符。谢谢大家!我认为他使用按钮,因为他有CSS,可以将规则应用于按钮类型的所有HTML元素,如果是
input type=button
.Co,我认为这不起作用如果需要,请纠正我wrong@RoyalBg我只是想澄清一下,它们都能按预期工作并提交表单。添加名称解决了问题!:)现在一切正常。经过测试并正常工作。两个选项都可以工作,输入或按钮。我还将字符集更改为UTF-8,以便可以使用特殊字符。谢谢大家!这可能是一个愚蠢的问题,但是您托管网站的服务器是否正确安装了PHP?您是否检查了浏览器检查器以使用网络/控制台选项卡进行进一步诊断?这可能是一个愚蠢的问题,但您托管网站的服务器是否正确安装了PHP?您是否检查了浏览器检查器以使用网络进行进一步诊断/控制台选项卡?认为看到他在所有其他表单元素中都有name字段是很自然的。认为看到他在所有其他表单元素中都有name字段是很自然的。
<button name="whatevername" type="submit" class="btn btn-bodyupA">Enviar</button>
<input name="whatevername" type="submit" class="btn btn-bodyupA" value="Enviar">
<button type="submit" name="submit" class="btn btn-bodyupA">Enviar</button>