Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php $\u请求仅接受GET_Php_Post_Get_Request - Fatal编程技术网

Php $\u请求仅接受GET

Php $\u请求仅接受GET,php,post,get,request,Php,Post,Get,Request,我正在使用$u请求将发送的数据发送到页面,页面将返回一些值,但现在只有当我使用get发送数据时,页面才会返回数据,我需要使用POST方法发送请求 这是我向其发送请求的域: 请求示例: 我已经将php.ini中的request\u order更改为request\u order=“GP”和request\u order=“PG”,并尝试过,但没有成功 注: 如果您使用GET将请求发送到该域,您将被重定向到具有相同请求的另一域,但如果您在POST中将请求发送到该域,您将被重定向到网站索引。 非常具

我正在使用$u请求将发送的数据发送到页面,页面将返回一些值,但现在只有当我使用get发送数据时,页面才会返回数据,我需要使用POST方法发送请求

这是我向其发送请求的域:
请求示例:

我已经将php.ini中的request\u order更改为request\u order=“GP”和request\u order=“PG”,并尝试过,但没有成功

注:
如果您使用GET将请求发送到该域,您将被重定向到具有相同请求的另一域,但如果您在POST中将请求发送到该域,您将被重定向到网站索引。 非常具体:TCP端口是开放的,若您向服务器上的主域发送请求,这两种方法都可以工作。(主域:)。当我将web文件从主机移动到VPS时,这个问题就开始了。 请帮帮我发生了什么事?我需要用POST方法发送请求

返回数据的我的一个函数

    add_action('init' , 'Singles');
function Singles(){

if(!isset($_REQUEST['Singles'])) return;


$limitation = (int) $_REQUEST['Singles'];

$json = array();
header('Content-Type: application/json');
$args = array(
'cat' => 111,
'posts_per_page' => $limitation
);
// The Query
$the_query = new WP_Query( $args );

// The Loop
if ( $the_query->have_posts() ) {

while ( $the_query->have_posts() ) {

$img = wp_get_attachment_url( get_post_thumbnail_id(get_the_ID) );
$the_query->the_post();
$json[] = array(
'id' => get_the_ID(),
'title' => get_the_title(),
'isSingle' => in_category(111,null),
'link' => get_the_permalink(),
'image' =>  wp_get_attachment_url(get_post_thumbnail_id(get_the_ID()))
);

}
} else {
// no posts found
}
/* Restore original Post Data */
wp_reset_postdata();

echo '{"items":'.json_encode($json).'}';

die();
}

我认为解决此问题的最快方法是通过手动合并
$\u GET
$\u POST
来覆盖默认的
$\u请求

在应用程序顶部,或在初始化脚本中编写以下命令

$_REQUEST = array_merge($_GET, $_POST);

一些PHP框架使用这种方式。

我认为解决这个问题的最快方法是通过手动合并
$\u GET
$\u POST
来覆盖默认的
$\u请求值

在应用程序顶部,或在初始化脚本中编写以下命令

$_REQUEST = array_merge($_GET, $_POST);
有些PHP框架就是这样使用的。

@Claudio King

我认为,即使PHP使用$\u请求来存储$\u GET和$\u POST数组值,这意味着无论您使用$\u GET或$\u POST访问什么,您都可以使用$\u请求访问相同的值

意味着如果

$\u GET['name']='test'
然后
$\u请求['name']
也是=
'test'

这同样适用于
$\u POST

$\u POST['name']='test'
然后
$\u请求['name']
也是=
'test'
@Claudio King

我认为,即使PHP使用$\u请求来存储$\u GET和$\u POST数组值,这意味着无论您使用$\u GET或$\u POST访问什么,您都可以使用$\u请求访问相同的值

意味着如果

$\u GET['name']='test'
然后
$\u请求['name']
也是=
'test'

这同样适用于
$\u POST


$\u POST['name']='test'
然后
$\u REQUEST['name']
也是=
'test'

不起作用,我添加了一个函数,请帮助我在哪里添加你给我的方法。$\u POST填充了吗?嗯,填充是什么意思?你能给我一些细节吗?试试var_dump($_POST)结果是:数组(0){}不,我添加了一个函数,请帮助我在哪里添加你给我的方法。$_POST填充了吗?嗯,填充是什么意思?你能告诉我具体情况吗?试试var_dump($_POST)结果是:array(0){}是的,你说的是真的,你的建议是什么?你好,阿里,很高兴收到你的回复。您如何在页面上发布数据?我认为您应该尝试使用PHP Curl Request来发布数据,设置Post data并发出请求。在“打开页面”中,您应该检查POST变量isset是否与isset相似($\u POST['Slides']),如果设置了POST数据,则应在发送GET请求时继续还原数据,如果未设置,则应打开站点页面。但为什么需要从网站的索引页恢复数据呢?这意味着您可以使用类似api.php的seprate页面来还原api数据…顺便说一句,您构建了一个很好的网站。谢谢,现在我正在使用Postman chrome插件进行测试,所以我向该url发送了一个简单的post请求,效果非常好,请自己尝试。上帝,怎么回事?你好,邮递员对POST参数有一些问题,我自己测试过。也请参考网址,并请尝试这个我测试它目前,它的工作。是的,你说的是真的,你的建议是什么?你好阿里很高兴听到你回来。您如何在页面上发布数据?我认为您应该尝试使用PHP Curl Request来发布数据,设置Post data并发出请求。在“打开页面”中,您应该检查POST变量isset是否与isset相似($\u POST['Slides']),如果设置了POST数据,则应在发送GET请求时继续还原数据,如果未设置,则应打开站点页面。但为什么需要从网站的索引页恢复数据呢?这意味着您可以使用类似api.php的seprate页面来还原api数据…顺便说一句,您构建了一个很好的网站。谢谢,现在我正在使用Postman chrome插件进行测试,所以我向该url发送了一个简单的post请求,效果非常好,请自己尝试。上帝,怎么回事?你好,邮递员对POST参数有一些问题,我自己测试过。也请参考网址,请尝试这个我测试它目前,它的工作。