我一直使用以下脚本而没有遇到任何问题,但今天出了点问题。我更换了Linux发行版,不知道是否有关。
$full = realpath($newPath."/".$image);
$data = array('name' => $name, 'pic' => '@'.$full.";type=image/jpeg");
$ch = curl_init();
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: multipart/form-data"));
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
$contents = curl_exec($ch);
我正在通过php表单发布信息,但由于它被检测为"application/octet-stream"而不是图像,因此我无法提交图像。
如何指定内容类型为图像并同时提交文本?
附言:我查看了之前提出的类似问题,只找到一个与我的目的完全相同的问题,但没有任何回复。我不是在尝试下载任何图像,我正在尝试通过同一表单上传图像和填写几个文本字段。
PHP 7.0.9 (cli) (built: Jul 20 2016 17:12:28) ( NTS )
版本,版权所有 (c) 1997-2016 The PHP Group,Zend Engine v3.0.0,版权所有 (c) 1998-2016 Zend Technologies。我知道我用 php v5 测试了脚本,可能这就是它无法正常工作的原因…不是吗? @Dekel - Kevin Gravell