PHP上传图像的文件权限

时间:2011-02-14 06:15:32

标签: php html

在我的PHP网站上,我有一个上传图片的脚本,请参阅下面的脚本

$uploaddir = $root_path."images/uploaded_images/category/"; 
            $small_file_name = trim($_FILES['cat_image1']['name']);
            $small_file_len = strlen($small_file_name);
            $small_file_ext = strtolower(substr($small_file_name,-4)); // select last 4 characters
            $small_uploadfile = $uploaddir. $_FILES['cat_image1']['name'];  
            if($small_file_len>4 and ($small_file_ext==".gif" or $small_file_ext==".jpg" or $small_file_ext=="jpeg")){
                if ($small_file_ext=="jpeg")
                    $uniqname = uniqid(rand()).".".$small_file_ext;
                else
                    $uniqname = uniqid(rand()).$small_file_ext;
                $thumb_filename1 = "thumb_".$uniqname;  //  store uniqname into database
                $uploadfile = $uploaddir.$uniqname; //uncomment for local testing 
                if (move_uploaded_file($_FILES['cat_image1']['tmp_name'], $uploadfile)) {
                    chmod($uploadfile,0777);
                    list($width, $height, $type, $attr) = getimagesize($uploadfile);
                    $max_width = 276;
                    $max_height = 162;
                    $a = new Thumbnail($uploadfile,$max_width,$max_height,$uploaddir.$thumb_filename1,100,'');
                    $a->create();

                }else{  
                        $flag=1;
                        $frm_server_side_error= $frm_server_side_error."Error in uploading image,";
                }
            }
            else{
                $flag=2;
                $frm_server_side_error= $frm_server_side_error."Image not in gif or jpg format,";

            }

上传到服务器后无法看到(我正在显示拇指图像)。所以我通过FTP检查了该图像的文件权限并给予了读取权限。因此图像显示。但我给类别文件夹及其父文件夹的读写权限。如何在上传后查看图像(对上传文件的默认读取权限,即拇指图像。)

我注意到实际图像具有读取权限,但拇指图像没有读取权限。我只需要显示拇指图像。

2 个答案:

答案 0 :(得分:1)

您已使用缩略图类创建缩略图图像。但我想您错过了更改新缩略图图像中的文件权限。请检查Thumbnail

类的create()函数中的代码

答案 1 :(得分:0)

你的代码在这里格式很差(一半是代码格式,一半不是),但是看起来你在将文件从临时位置复制到最终位置的片段之前有一个注释 - 如果是这样的话,文件将不存在,因此将无法查看。

但我可能错了 - 如果您修改格式,我很乐意再看看。