【发布时间】:2014-01-21 23:07:40
【问题描述】:
我正在使用 Codeigniter 框架,我想做这样的事情:
我想将 $_GET 变量从服务器 1 发送到服务器 2,如下所示:www.server1.com?foo=123
现在在服务器 2 上,检查 $_GET==123 是否返回一些数据。
我的代码如下所示:
在服务器 1 上,例如:www.server1.com?foo=hello
if(isset($_GET['foo'])){
$post_fields = array(
'foo' => $_GET['foo']
);
$ch = curl_init('http://server2.com/master.php');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_fields);
curl_setopt($ch, CURLOPT_POST, 1);
$result = curl_exec($ch);
die($result);
}
服务器 2 上的代码如下所示:
$variable = $_POST['foo'];
if($variable=="hellow"){
echo "right!";
}else{
echo "wrong";
}
当我运行此代码时,我收到 400 个错误请求 - nginx:
【问题讨论】:
-
首先,您是否允许获取变量?请参阅此问题:stackoverflow.com/questions/334708/… - 另外,如果您使用 CI,您可能需要考虑使用
$this->input->post('foo') -
server 2 不能使用 CI,所以我不需要使用 $this->input->post('foo'),并且在我的 get variables allowed...另一个想法?谢谢
标签: php codeigniter curl