日期:2014-05-17  浏览次数:20523 次

页面间的值传递问题。使用$_POST[],但是还是无法传递
刚开始学这个,不知道问题出在哪里,请高人指点!
代码如下
HTML code

...

<form action = "results.php" method="post">
  Choose Search Type:<br />
  <select name ="searchtype">
    <option value="author">Author</option>
    <option value="title">Title</option>
    <option value="isbn">ISBN</option>
  </select>
  <br />
  Enter Search Term:<br />
  <input name="searchterm" type="text" size="40">
  <br />
  <input type="submit" name="submit" value="search" onClick="window.location='results.php'" />
</form>

...


以上第一个页面时HTML的,下面是PHP
PHP code

...
<?php
  $searchtype=$_POST['searchtype'];
  $searchterm=trim($_POST['searchterm']);
  if(!$searchtype || !$searchterm) {
    echo 'You have not entered search details. Please go back and try again.';
    exit;
  }

...



在HTML的页面中有输入内容,但是PHP页面一直都接收不到,
只显示这个错误信息
1、我百度的结果是
  有人说要打开register_globals,那是不是我程序中所有需要从表单获取的数据都成了全局变量
  是不是每次使用完还要清理?
2、如果不打开register_globals,我查阅的资料使用POST应该是没有问题的啊?为什么会取不到值
3、关于表单的提交。我看的的大部分例子,都只在form标签里写了action="XXX.PHP"就可以了,为什么我写的就不行,还要在submit按钮中加一个onClick才能跳转页面?
4、是否是我的PHP或APACHE的配置问题?


------解决方案--------------------
你把 onClick="window.location='results.php'"这段~~ 我这边试了OK的。

HTML code

<form action = "results.php" method="post">
  Choose Search Type:<br />
  <select name ="searchtype">
    <option value="author">Author</option>
    <option value="title">Title</option>
    <option value="isbn">ISBN</option>
  </select>
  <br />
  Enter Search Term:<br />
  <input name="searchterm" type="text" size="40">
  <br />
  <input type="submit" name="submit" value="search" />
</form>

------解决方案--------------------
HTML code

<form name="testForm" action = "results.php" method="post">
  Choose Search Type:<br />
  <select name ="searchtype">
    <option value="author">Author</option>
    <option value="title">Title</option>
    <option value="isbn">ISBN</option>
  </select>
  <br />
  Enter Search Term:<br />
  <input name="searchterm" type="text" size="40">
  <br />
<!-- html中的事件都是小写 -->
  <input type="submit" name="submit" value="search" onclick="subForm()" />
</form>
<script>
function subForm(){
    document.testForm.action = "results.php";
    document.testForm.submit();
}
//如果使用location.href将直接跳转页面,除非后面加参数,那也是用get接收
</script>

------解决方案--------------------
探讨

HTML code

<form name="testForm" action = "results.php" method="post">
Choose Search Type:<br />
<select name ="searchtype">
<option value="author">Author</option>
<option value="title">……

------解决方案--------------------