以下是我在php文件中使用的CURL调用
$url=$path."l2pharmaserviceclassfile.php?action=PENDINGDRUGORDERS&session_id1=".$_SESSION['sessionid']."&pop_id=".$_SESSION['popId']."&user_id=".$_SESSION['userId'];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
$result = curl_exec($ch);
curl_close($ch);
echo "<pre>";
print_r($result);
这是我在l2pharmaserviceclassfile.php
中写的else if($_REQUEST['action']=='PENDINGDRUGORDERS')
{
echo $_REQUEST['session_id1'];
}
但是我无法获得会话ID值。当我尝试echo $_REQUEST['pop_id'];
时,我得到了价值。
答案 0 :(得分:2)
会话ID可能包含需要编码以在查询字符串中发送的特殊字符。 对于这类东西,依赖PHP核心函数可能更好:
$parameters = array(
'action' => 'PENDINGDRUGORDERS',
'session_id1' => $_SESSION['sessionid'],
'pop_id' => $_SESSION['popId'],
'user_id' => $_SESSION['userId']
);
$url = sprintf(
"%s?%s",
$path."l2pharmaserviceclassfile.php",
http_build_query($parameters)
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
$result = curl_exec($ch);
curl_close($ch);
echo "<pre>";
print_r($result);