PHP尝试从表单中获取变量

时间:2014-06-16 03:56:05

标签: php html variables post request

出于某种原因,当我提交表单时,它会转到PHP。 PHP没有从HTML中获取变量。

我的index.php构成代码:

<form method="post" action="postConsole.php"> 
Target:
<select name="target" size ="1">
  <option value="0" selected="selected">All</option>
  <option value="1001">LocalHost</option>
</select>
Event:
<select name="dropevent" size ="1">
  <option value="0" selected="selected">Choose</option>
  <option value="PlayerMoveEvent">PlayerMoveEvent</option>
  <option value="PlayerJoinEvent">PlayerJoinEvent</option>
  <option value="PlayerQuitEvent">PlayerQuitEvent</option>
  <option value="PlayerRespawnEvent">PlayerRespawnEvent</option>
  <option value="PlayerInteractEvent">PlayerInteractEvent</option>
  <option value="PlayerKickEvent">PlayerKickEvent</option>
</select>
Command: <input type="text" size="24" maxlength="24" name="command"><br /> 
<input type="submit" value="submit" name="submit">
</form>

然后这是我的postConsole.php文件:

<?php
  $command = $_REQUEST['command'];
  $event = $_POST["dropevent"];
  $target = $_POST["target"];
  $PME = "PlayerMoveEvent";
  $PJE = "PlayerJoinEvent";
  $PQE = "PlayerQuitEvent";
  $PRE = "PlayerRespawnEvent";
  $PIE = "PlayerInteractEvent";
  $PKE = "PlayerKickEvent";
  echo $command . "/" . $event . "/" . $target;

当我输入详细信息并按提交时,它会显示“ // ”。有人知道为什么会这样吗?我非常感谢你的帮助。

PS:我知道$ command,$ event,$ target,都是不同的。那是因为我一直在尝试不同的方法来获取变量,所以请不要评论那部分。

3 个答案:

答案 0 :(得分:0)

您向我们展示的这部分代码是正确的。如果您的显示是“//”,可能在您的postConsole.php文件中,就在您向我们展示的代码之前,您可能会执行以下操作:

unset($_POST);
//or
$_POST = array();

unset($_REQUEST);
//or
//$_REQUEST = array();

答案 1 :(得分:0)

尝试使用: -

print_r($_POST);

检查表单是否提交所有值

答案 2 :(得分:0)

尝试检查变量

var_dump($_REQUEST);
var_dump($_POST);

如果POST请求后有空,请检查PHP指令中是否启用了POST,使用phpinfo()或ini_get(),如果没有启用,请更改php.ini

// must contain "P" as POST, for example "GPCS"
echo ini_get('variables_order');

// must contain "P" as POST, for example "GP"
echo ini_get('request_order');

// must be enable, for example 1 or "On"
echo ini_get('enable_post_data_reading');