dedecms 批量提取第一张图片最为缩略图的代码(文章+软件)

  具体的实现代码,如下:下面会给简单的说明。

  代码如下:

  introduce ;

  return $id =$id ;

  }

  //结束!获取body数据

  //开始!提取变量中第一个图片地址

  function bodyimg($obj) {

  if(isset($obj)){

  if ( preg_match( ““, $obj, $regs ) ) { //使用获取第一幅图像地址

  return $obj = $regs[1] ;

  } else {

  echo “Erro:没有图片地址!
“;

  return $obj = 1 ;

  }

  }

  }

  //结束!提取变量中第一个图片地址

  //开始 修改rchives,插入获取的图像地址

  function changearchives($pic,$id) {

  $sql=”UPDATE `dede_archives`

  SET `litpic` = ‘”.$pic.”‘

  WHERE `id` = ‘”.$id.”‘”;

  $result=mysql_query($sql);

  if($result==1) echo “修改数据成功!
“;

  else echo “修改数据失败!
“;

  }

  //结束 修改rchives,插入获取的图像地址

  //显示数据表内容

  $exec=”select * from dede_archives where typeid in(494,495,496,497,498,499,500,501,502,503,504,374,375,376,377,378,379,488) and litpic = ””; //channel=’1′ 即文章频道 也可以使用typeid=”

  $result=mysql_query($exec); //指定栏目ID但只能是最小分类的ID, litpic = ” 意为缩略图地址为空

  while($rs=mysql_fetch_object($result))

  {

  $id = $rs->ID;

  echo $id.” “;

  $body = body($id); //调用函数获取 body内容

  $pic = bodyimg($body); //调用函数获取 body里面的第一张图片地址

  if ($pic<>1){

  changearchives($pic,$id); //调用函数插入获取的地址

  }

  }

  mysql_close($conn);

  ?>

  我也是刚刚学PHP 上面的代码也是东拼西凑起来的 做了详细的注释 初学者也可以来看看

  因为上面的代码不能自动的获取下一级目录,所以比较手工添加目录id,常用的语句有。

  $exec=”select * from dede_archives where typeid in(1,2,3) and litpic = ””; //channel=’1′ 即文章频道 也可以使用typeid=”

  上面的代码是获取typeid为 1和2和3的数据。

  如果执行修改一个id可以用下面的语句

  $exec=”select * from dede_archives where typeid=’1′ and litpic = ””;

  如果是频道的可以用

  $exec=”select * from dede_archives where channel=’1′ and litpic = ””;

  注意先备份,要不就不要随便测试了,注意是 dedecms5.1的版本,其它的版本应该也适应。多测试(备份的前提下。)

☉免责声明:本站所有模板均来自用户分享和网络收集,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服,我们核实后会立即删除。
☉本站提供的源码、模板、软件工具等其他资源,都不包含技术服务,请大家谅解!
pbootcms模板网 » dedecms 批量提取第一张图片最为缩略图的代码(文章+软件)

Pbootcms模板网 提供优质的模板集合

立即查看 了解详情