3

我正在尝试将图像直接从 url 上传到数据库 blob 字段。

我设法做到这一点的唯一方法是将图像保存在我的网络服务器文件夹中并读取文件并返回内容。

我正在寻找一种将 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);

数据库插入

插入帖子值('','2','2','$objTypeId','','0','','1','','','','','', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '' , '', '', '', '', '', '', '', '$pic1', '$pic2', '$pic3')");

很多

4

1 回答 1

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'");
于 2012-12-04T10:09:39.563 回答