【问题标题】:php mail form input errorphp邮件表单输入错误
【发布时间】:2013-11-28 21:25:50
【问题描述】:

您好,我在我的页面上使用联系邮件表单。它是在默认 tempate 中构建的,它看起来像这样:

    <form action="contact.php" method="post" id="contactform_main" style="font-size:14px">
                <ol>
                  <li>
                    <label for="name">Meno</label>
                    <input id="name" name="name" class="text" required/>
                  </li>
                  **<li>
                    <label for="number">Tel.</label>
                    <input id="number" name="number" class="text" />
                  </li>**
                  <li>
                    <label for="email">Email</label>
                    <input type="email" id="email" name="email" class="text" required />
                  </li>

                  <li>
                    <label for="subject">Predmet</label>
                    <input id="subject" name="subject" value="<?php echo $_GET['subject'] ?>" class="text"/>
                  </li>
                  <li>
                    <label for="message">Správa</label>
                    <textarea id="message" name="message" rows="6" cols="50" ><?php echo $_GET['text'] ?></textarea>
                  </li>
                  <li class="buttons">
                    <input type="submit" name="imageField" value="OdoslaĹĄ" class="send" style="cursor:pointer" />
                    <div class="clr"></div>
                  </li>
                </ol>
              </form>

第二个输入(数字} 是我自己添加的代码。这是处理表单的重要 php 部分

    $values = array ('name','number','email','message');
        $required = array('name','number','email','message');


        $your_email = "some@mail.com";
        $email_subject = "Nová správa: ".$_POST['subject'];
        $email_content = "Text správy:\n";

        foreach($values as $key => $value){
          if(in_array($value,$required)){
            if ($key != 'subject' && $key != 'company') {
            //  if( empty($_POST[$value]) ) { echo 'PLEASE FILL IN REQUIRED FIELDS'; exit; }
            }
}
            $email_content .= $value.': '.$_POST[$value]."\n";
          }

在我将数字放入值数组之后。由于空值条件,我的表单在提交时崩溃。如果我删除此条件,则表格已发送,但编号仍为空。 你能告诉我为什么输入数字没有发送任何值吗?谢谢

【问题讨论】:

  • $required = array('name',number','email','message'); -- 再次阅读这一行。您缺少 number 的单引号。
  • 请注意,但唯一的 qute 标记在此处,我只是在此处将其删除。但是表格不起作用。

标签: php forms email input


【解决方案1】:

你解决了这个问题

您显示的代码现在缺少 foreach 循环的结束 }

【讨论】:

  • 抱歉,我刚刚复制了错误的代码。现在应该没问题了,这不是语法错误,因为我的电子邮件发送时没有错误,但输入的号码总是空的。
  • 我会先做一个 print_r($_POST) 看看你想要的数据是否真的在那里,然后再继续尝试调试它
猜你喜欢
  • 2016-01-26
  • 1970-01-01
  • 2015-06-02
  • 1970-01-01
  • 1970-01-01
  • 2013-02-11
  • 2019-01-30
  • 2017-06-08
  • 1970-01-01
相关资源
最近更新 更多