drupal 升级后相册图片丢失的修复
2008-11-19    刘世伟   
打印自: 安恒公司
地址: HTTP://smartbits.anheng.com.cn/news/article.php?articleid=1482
drupal 升级后相册图片丢失的修复
近期升级一个drupal的网站,从5.00升级到5.2,相册里面的图像都不能显示了, 分析了一下程序,发现是数据库结构不对,
不知道是升级程序的bug还是升级步骤有问题,根据数据库结构,修改了一下image.module,修复了问题。

修改如下,

function image_load(&$node) {
 //$result = db_query("SELECT i.image_size, f.filepath FROM {image} i INNER JOIN {files} f ON i.fid = f.fid WHERE i.nid = %d", $node->nid);
 $result = db_query("SELECT filename as image_size, filepath FROM {files}  WHERE nid = %d", $node->nid);
  $node->images = array();
  while ($file = db_fetch_object($result)) {
    $node->images[$file->image_size] = file_create_path($file->filepath);
  }



drupal 的node 可以是各种东西, 如果是image,在node_load正常载入node信息后,会调用 image_load 获取image的扩展信息放在 $node[image]
责任编辑: admin