PHP用流方式制作缩略图


  本文标签:PHP

  其中db_mysql.inc.php,config.php,function.php不是真正使用到的,关键是$filename 文件名,我是通过读取数据库中的图片名称  。

  include_once (inc/db_mysql.inc.php);
include_once (inc/config.php);
include_once (class/function.php);

  global $picPath;

  if (strstr($_SERVER[HTTP_USER_AGENT],"MSIE")) {
$attachment = ;
} else {
$attachment = atachment;;
}

  $image = getInfo(newssp_gallery,id,$_GET[id]);

  $filename = $picPath.$image[filename];

  if (!file_exists($filename)) {
$filename = $picPath."notexist.gif";
}

  header("Cache-Control: no-store, no-cache, must-revalidate"); // HTTP/1.1
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");// HTTP/1.0

  header("Content-disposition:".$attachment." filename=".$image[original]);

  $size = @filesize($filename);

  header("Content-Length: $size");

  $fd = @fopen($filename,rb);
$contents = @fread($fd,$size);
@fclose ($fd);

  echo $contents;
?>

  使用的时候可以把在html文件里加上:

  showpic.php及上面的那个php文件,id=xxx是数据库里的记录ID,width是缩略图的宽,height是缩略图的高,请不要同时宽高都上,例如,你要实现宽为50的缩略图,只要这样就可以了  。

(责任编辑:铭铭)