$_POST 在 Web 服务中失败?

问题描述 投票:0回答:2

我被困了两天,我正在使用网络服务,该网络服务是从

iOS
发出请求,他们使用
$_POST
方法发送请求,但它不起作用。

我尝试

print_r($_POST)
,但它返回空白
Array()
,也尝试使用
$_REQUEST
,但它返回空白
Array()
,只有
GET
方法工作正常。

我还制作了

<form>
并尝试使用
POST
方法提交并打印
$_POST
$_REQUEST
然后两者都可以正常工作。

打印

$_SERVER['REQUEST_METHOD']
时返回
GET

请问有人知道这是怎么回事吗?

php ios web-services webservice-client
2个回答
1
投票

在这里,我能够找到我的答案和问题。

mod_rewrite
是更改请求方法。如果您有影响操作 URL 的重写规则,您将无法读取 POST 变量。

您必须在开头添加此规则到

.htaccess
,以避免重写 url:

RewriteRule ^login.php - [PT]


0
投票

首先,我们需要查看您的代码才能为您提供全面帮助。下面是一个如何将表单与 PHP 和

$_POST
结合使用的小示例。

<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    echo "<pre>";
    var_dump($_POST);
    echo "</pre>";
    exit;
}
?>

<!-- HTML -->
<form method="POST" action="<?= $_SERVER['PHP_SELF']; ?>">
    <input type="text" name="element" />
    <button type="submit">Submit form</button>
</form>
© www.soinside.com 2019 - 2024. All rights reserved.