我觉得是你的 缩略图function 有问题从问题提示来看,你的图片写入没有问题,说明权限没有问题,但提示是 Unable to open 我觉得你还是看看你的缩略图function

解决方案 »

  1.   

    就是使用imagejpeg()生成图片文件的时候出错
    imagejpeg()里面可以使用相对路径么?
      

  2.   

    缩略图function
    function makethumb($srcFile,$dstFile,$dstW,$dstH,$if=1,$room=1){
    error_reporting(2047);
    if($if==1){
    $data=GetImageSize($srcFile,&$info);
    switch($data[2]){
           case 1:
                $im=@ImageCreateFromGIF($srcFile);
                break;
           case 2:
                $im=@ImageCreateFromJPEG($srcFile);
                break;
           case 3:
                $im=@ImageCreateFromPNG($srcFile);
                break;
    }
    $srcW=ImageSX($im);
    if($srcW>$dstW){$rad=$dstW/$srcW;}
    else{$rad=1;$dstW=$srcW;}
    $srcH=ImageSY($im);
    if($room==1) $dstH=$srcH*$rad;

    $ni=ImageCreateTrueColor($dstW,$dstH);
    ImageCopyResized($ni,$im,0,0,0,0,$dstW,$dstH,$srcW,$srcH); Imagejpeg($ni,$dstFile);// }else{
             $ImageData = file_get_contents($srcFile);
             header("Content-type: image/gif");
             echo $ImageData;
    }
    }
      

  3.   

    先检查源文件是否存在
    function makethumb($srcFile,$dstFile,$dstW,$dstH,$if=1,$room=1){
      if(!file_exists($srcFile)) die("源文件$srcFile不存在");
      ......
      

  4.   

    唉~~
    好像程序在本地都是好好的,而且貌似昨天还是好的,今天早上就不行了,
    php也重装了,权限也重设了,拖回本地重新建个站也是好的
    郁闷~~~
      

  5.   

    看看你的服务器是否支持imagejpeg()函数 用phpinfo()看gd信息 jpeg是否为enable
      

  6.   

    很明显是权限问题。
    Unable to open for writing in