2

我遇到了一个使用 PHP 的网络表单的问题。我敢肯定这很明显,但找不到问题。

我想要做的基本上是在表单上的字段中输入一个数值,然后将值发送到 mysql 数据库,请求链接到该值的记录,

我遇到的问题是,当我点击“提交”按钮时,该值没有被正确获取,但会获取提交前一个查询的前一个值。

例如,我想检索“id”为 1 的记录。我在字段中输入“1”(该字段的 id 为“identry”),但出现错误。该错误基本上表示由于某种原因我没有在“id”字段中输入值。然后我再次访问搜索字段,输入值“2”,然后点击“提交”。然后我得到一个结果,它刚刚访问了 'id' 为 '1' 的记录(上一个查询!!!!)

有任何想法吗??

这是我的表单代码.....

<form id="form1" name="form1" method="post" >
          <table width="400" border="0">
            <tr>
              <td width = "150" ><div align="right">HPOV reference </div></td>   
              <td width = "150"><label>
              <input name= "identry" type="text" id="identry" />
              </label></td>
              <td width = "100"><label>
                <div align="left">
                <input name="Submit" type="submit" onclick="MM_openBrWindow('HPOVwindow.php?id=<?php echo $_POST['identry']; ?>','','toolbar=yes,width=1000,height=1000')" />
                </div>
                </label></td>
            </tr>
          </table>
        </div>
      </form>

我认为这是我如何在第一个实例中提交变量但无法找到如何做到这一点。

4

1 回答 1

2

当您提交表单时,您正在发布上一个条目。

PHP 无法在客户端处理数据,直到它被发送到服务器。

这一行:<?php echo $_POST['identry']; ?>告诉 PHP 填充发布给它的值,这将是前一个条目。你的意思是:document.getElementById("identry").value

编辑:所以输入值的行看起来像这样:

<input name="Submit" type="submit" onclick="MM_openBrWindow('HPOVwindow.php?id=" + document.getElementById("identry").value + "','','toolbar=yes,width=1000,height=1000')" /> 

并尝试以下操作:

<form id="form1" name="form1" method="post" >
          <table width="400" border="0">
            <tr>
              <td width = "150" ><div align="right">HPOV reference </div></td>   
              <td width = "150"><label>
              <input name= "identry" type="text" id="identry" />
              </label></td>
              <td width = "100"><label>
                <div align="left">
                <input name="Submit" type="submit" onclick="submitForm();" /> 
                </div>
                </label></td>
            </tr>
          </table>
        </div>
        <script>
          function submitForm() {
                     window.open('HPOVwindow.php?id=' + document.getElementById("identry").value,'','toolbar=yes,width=1000,height=1000');
                                 return false;


          }
        </script>
      </form>
于 2012-10-21T11:36:32.710 回答