【发布时间】:2015-06-29 18:19:16
【问题描述】:
我已经创建了一个自定义状态并测试它是否为 2,并在此基础上尝试删除产品的主图像。起初我不知道如果使用会话,cURL 需要特殊处理,我被重定向到管理员登录屏幕。这个修改应该进入文件admin/controller/catalog/product(当然使用VQMod)。直到现在我才收到NULL 的回复。
if((int) $this->request->post['status'] == 2) {
if(isset($this->request->post['image'])) {
$params = array(
'path' => $this->request->post['image']
);
$defaults = array(
CURLOPT_URL => $this->url->link('common/filemanager/delete', 'token=' . $this->session->data['token'], 'SSL'),
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $params,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_COOKIESESSION => true,
CURLOPT_COOKIEJAR => 'cookie-jar',
CURLOPT_COOKIEFILE => '/home/u32807/tmp'
);
$ch = curl_init();
curl_setopt_array($ch, $defaults);
$ouput = curl_exec($ch);
if($output === false) {
echo 'Curl error: ' . curl_error($ch);
die();
}
else {
var_dump($output);
die();
}
}
}
我尝试将 CURLOPT_POSTFIELDS 注释掉,也尝试给它一个空数组,但仍然是 NULL。因此,我建立连接的方式一定有问题,但我不知道从哪里开始调试它。 Hewp pweeze! :/ OpenCart 版本是 1.5.6.4。
【问题讨论】:
-
一个实际的文本空值('null',4 个字符),还是一个 php 空值?
-
var_dump($output)部分产生NULL,而不是string(4) "null" -
然后那个 url 返回了一个空的响应体。