我正在尝试将图片直接从网址上传到数据库blob字段。
我设法这样做的唯一方法是将图像保存在我的webserver文件夹中并读取文件并返回内容。
我正在寻找一种将url数据内容直接传输到数据库blob字段的方法。
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 0);
curl_setopt($ch, CURLOPT_URL, $link);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
curl_close($ch);
$savefile = fopen('objectPic/temp'.$counter.'.jpg', 'w');
fwrite($savefile, $result);
fclose($savefile);
$fp = fopen('objectPic/temp'.$counter.'.jpg', 'r');
$data = fread($fp, filesize('objectPic/temp'.$counter.'.jpg'));
$data = addslashes($data);
fclose($fp);
return $data;
好 这是功能:
function GetImageFromUrl($link) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 0);
curl_setopt($ch, CURLOPT_URL, $link);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
这是代码:
$pic1 = GetImageFromUrl($pic1);
db insert
INSERT INTO发布VALUES('','2','2','$ objTypeId','','0','','1','','','','', '','','','','','','','','','','','','','',''','',''' ,'','','','','','','','','$ pic1','$ pic2','$ pic3')“);
tnx很多
答案 0 :(得分:0)
试试这个
$file = fopen("http://url/img.jpg", "rb");
$output = fread($file, 10000);
fclose($file);
// insert sql code here
mysql_query(" INSERT INTO table SET image='$output'");