Php 带 get 或 post 的 exec()
Php exec() with get or post
嗨,我有这个问题
- 我将 ajax post 归档 insert.php
- 我在 insert.php 上执行 exec() 到 send.php
我需要使用 POST 传递或使用 exec() 从 insert.php 到 send.php
获取数据
这是我的代码,但没有传递任何内容
$data = array(
'user' => '1001',
'area' => 'any',
'type' => 'any',
'max' => '100'
);
$query = http_build_query($data);
shell_exec("php " . ROOT . "/send.php " . $query . " &> /dev/null &");
在 send.php 我收到了一个简单的电子邮件,用于接收信息 print_r($_REQUEST);但我只是收到 helloArray
()
请帮忙解决任何问题
在@barmar 的帮助下
$data = array(
'user' => '1001',
'area' => 'any',
'type' => 'any',
'max' => '100'
);
$query = escapeshellarg(http_build_query($data));
exec("php " . ROOT . "/mail.php " . $query . " &> /dev/null &");
在 send.php
parse_str($argv[1], $data);
$data['user'];
$data['area'];
$data['type'];
$data['max'];
您需要转义 $query
,因为它可能包含一些对 shell.
具有特殊含义的字符
$query = escapeshellarg(http_build_query($data));
在send.php
中,使用$argv[1]
得到$query
的值。您可以使用 parse_str($argv[1], $data)
将参数值从中提取到 $data
数组中,然后您可以使用 $data['area']
获取该参数。
嗨,我有这个问题
- 我将 ajax post 归档 insert.php
- 我在 insert.php 上执行 exec() 到 send.php
我需要使用 POST 传递或使用 exec() 从 insert.php 到 send.php
获取数据这是我的代码,但没有传递任何内容
$data = array(
'user' => '1001',
'area' => 'any',
'type' => 'any',
'max' => '100'
);
$query = http_build_query($data);
shell_exec("php " . ROOT . "/send.php " . $query . " &> /dev/null &");
在 send.php 我收到了一个简单的电子邮件,用于接收信息 print_r($_REQUEST);但我只是收到 helloArray ()
请帮忙解决任何问题
在@barmar 的帮助下
$data = array(
'user' => '1001',
'area' => 'any',
'type' => 'any',
'max' => '100'
);
$query = escapeshellarg(http_build_query($data));
exec("php " . ROOT . "/mail.php " . $query . " &> /dev/null &");
在 send.php
parse_str($argv[1], $data);
$data['user'];
$data['area'];
$data['type'];
$data['max'];
您需要转义 $query
,因为它可能包含一些对 shell.
$query = escapeshellarg(http_build_query($data));
在send.php
中,使用$argv[1]
得到$query
的值。您可以使用 parse_str($argv[1], $data)
将参数值从中提取到 $data
数组中,然后您可以使用 $data['area']
获取该参数。