从远程表单发布时,$ _POST在XAMPP上为空

时间:2013-07-24 06:59:51

标签: php apache variables xampp

我有一台Windows VPS服务器,这台服务器是个人服务器,所以我安装了XAMPP,用于在这台服务器上运行PHP和Apache。

现在我在另一台服务器上用post方法创建了一个from,并将数据发布到这个persoanl服务器(有XAMPP)。

当我使用$_POST此变量为空时,我也检查了$_REQUEST,但此变量也是空的。

本地表单没有此问题,$_POST将传递所有发布的变量,我在远程表单中遇到此问题。

我认为这个问题与安全性有关,我应该在php.ini更改它,但我不知道该怎么做!

更新

HTML CODE:

<form method="post" action="http://xxx.xxx.xxx.xxx/login.php">
  <input type="text" name="username" value="Username ..." />
  <br/>
  <input type="password" name="password" value="Password ..." />
  <br/>
  <br/>
  <input type="submit" name="submit" value="Send" />
</form>

PHP代码:

<?php

echo $_POST['username'];
echo $_POST['password'];
print_r($_POST);
print_r($_REQUEST);
print_r($GLOBALS);

?>

如果同一服务器php文件中的两个文件都有效,$_POST将返回已发布的变量,但如果HTML文件位于不同的服务器上,$_POST将为空!

1 个答案:

答案 0 :(得分:0)

这是一个疯狂的猜测。也许您忘了在表单中设置方法。

<form method="post" action="http://somepage.com/">

为确保接收端的post数组不为空,您还需要一些带有已定义名称的输入字段。

<input type="text" name="my_value" value="test value" />

在接收服务器上,print_r($ _ POST)应该创建如下内容:

Array
(
    [my_value] => test value
)