php dedecms采集远程图片
<?php
for ($i = 1; $i <= 120; $i++) {
if (isset($ {
'imgurl' . $i
}) || (isset($_FILES['imgfile' . $i]['tmp_name']) && is_uploaded_file($_FILES['imgfile' . $i]['tmp_name']))) {
$iinfo = str_replace("'", "`", stripslashes($ {
'imgmsg' . $i
}));
$iurl = stripslashes($ {
'imgurl' . $i
});
$ioldurl = @stripslashes($ {
'imgurlold' . $i
});
$ioldddimg = @stripslashes($ {
'oldddimg' . $i
});
//非上传图片
if (!is_uploaded_file($_FILES['imgfile' . $i]['tmp_name'])) {
if (trim($iurl) == '') {
continue;
}
$iurl = trim(str_replace($cfg_basehost, '', $iurl));
if ((eregi("^http://", $iurl) && !eregi($cfg_basehost, $iurl)) && $cfg_isUrlOpen)
//远程图片
{
$reimgs = '';
if ($cfg_isUrlOpen && $isrm == 1) {
$reimgs = GetRemoteImage($iurl, $adminid);
if (is_array($reimgs)) {
$litpicname = $pagestyle > 2 ? GetImageMapDD($reimgs[0], $ddmaxwidth) : '';
$imgurls.= "{dede:img ddimg='$litpicname' text='$iinfo' width='" . $reimgs[1] . "' height='" . $reimgs[2] . "'} " . $reimgs[0] . " {/dede:img} ";
} else {
echo "下载:" . $iurl . " 失败,可能图片有反采集功能或http头不正确!<br /> ";
}
} else {
$imgurls.= "{dede:img text='$iinfo' width='' height=''} " . $iurl . " {/dede:img} ";
}
//站内图片
} else if ($iurl != '') {
$imgfile = $cfg_basedir . $iurl;
if (is_file($imgfile)) {
if ($ioldurl != $iurl) {
if (file_exists($cfg_basedir . $ioldddimg)) {
@unlink($cfg_basedir . $ioldddimg);
}
$litpicname = $pagestyle > 2 ? GetImageMapDD($iurl, $ddmaxwidth) : '';
} else {
$litpicname = $ioldddimg;
}
$info = '';
$imginfos = GetImageSize($imgfile, $info);
$imgurls.= "{dede:img ddimg='$litpicname' text='$iinfo' width='" . $imginfos[0] . "' height='" . $imginfos[1] . "'} $iurl {/dede:img} ";
}
}
} else {
//直接上传的图片
$sparr = Array(
"image/pjpeg",
"image/jpeg",
"image/gif",
"image/png",
"image/xpng",
"image/wbmp"
);
if (!in_array($_FILES['imgfile' . $i]['type'], $sparr)) {
continue;
}
$uptime = time();
$imgPath = $cfg_image_dir . "/" . MyDate("ymd", $uptime);
MkdirAll($cfg_basedir . $imgPath, $GLOBALS['cfg_dir_purview']);
CloseFtp();
$filename = $imgPath . "/" . dd2char($cuserLogin->getUserID() . MyDate("His", $uptime) . mt_rand(1000, 9999)) . "-{$i}";
$fs = explode(".", $_FILES['imgfile' . $i]['name']);
$filename = $filename . "." . $fs[count($fs) - 1];
@move_uploaded_file($_FILES['imgfile' . $i]['tmp_name'], $cfg_basedir . $filename);
//缩图
$litpicname = $pagestyle > 2 ? GetImageMapDD($filename, $ddmaxwidth) : '';
//水印
$imgfile = $cfg_basedir . $filename;
@WaterImg($imgfile, 'up');
if (is_file($imgfile)) {
$iurl = $filename;
$info = "";
$imginfos = GetImageSize($imgfile, $info);
$imgurls.= "{dede:img ddimg='$litpicname' text='$iinfo' width='" . $imginfos[0] . "' height='" . $imginfos[1] . "'} $iurl {/dede:img} ";
//把新上传的图片信息保存到媒体文档管理档案中
$inquery = "
INSERT INTO #@__uploads(title,url,mediatype,width,height,playtime,filesize,uptime,mid)
VALUES ('$title" . $i . "','$filename','1','" . $imginfos[0] . "','" . $imginfos[1] . "','0','" . filesize($imgfile) . "','" . time() . "','$adminid');
";
$dsql->ExecuteNoneQuery($inquery);
}
}
} //含有图片的条件
} //循环结束教程地址:http://www.phprm.com/frame/9170023e04fdf882f867aea020d081df.html
欢迎转载!但请带上文章地址^^