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
欢迎转载!但请带上文章地址^^