• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
مشکل در چک کردن تابع $_files
#1
با سلام و عرض ادب
در حال نوشتن یه آپلودر ساده فایل برای CMS هستم . اما از یه موضوعی ذهنم رو خیلی مشغول کرده .
بنده هیچ جوره نتونستم چک کنم که این تابع $_files ارسال شده یا نه . از isset ,empty استفاده کرده ام .
اما در هر دو مورد Arry برمیگردونه و هیچ موقع خالی نشون نمی ده تابع رو [/align] Sad

این هم class upload م هست :
[align=left]
کد پی‌اچ‌پی:
<?php

class Upload {
    public 
$fileName$message ,$upload_dir ,$fileUploaded;
    
    function 
__construct() {
        
    }
      
    public function 
uploadImage($file){
        
$this->fileName $_FILES["$file"];
        
$this->upload_dir _RootAd "upload" _DS."images"_DS ;
        
$allowedExts = array ("gif","jpeg","jpg","png" );
        
        
$temp explode("."$this->fileName["name"]);
        
$extension end($temp);
        
// For Images
        
$fileType exif_imagetype($this->fileName["tmp_name"]);
        
$allowed = array ( IMAGETYPE_GIF IMAGETYPE_JPEG IMAGETYPE_PNG );
        

        if(!
in_array($extension$allowedExts)){
            
$this->message "فرمت عکس غیر مجاز می باشد ";
            
        }elseif(
$this->fileName['size'] > 20000000){
            
$this->message " سایز عکس زیاد است  ";
            
        }elseif(((!
$this->fileName["type"] == "image/gif")
                || (!
$this->fileName["type"] == "image/jpeg")
                || (!
$this->fileName["type"] == "image/jpg")
                || (!
$this->fileName["type"] == "image/png")
                || (!
$this->fileName["type"] == "application/pdf")
                || (!
$this->fileName["type"] == "application/zip"))) { 

            
$this->message " فایل آپلود شده عکس نیست ";
            
        }elseif (!
in_array($fileType$allowed)){
            
$this->message " دوست عزیز مگه مرض داری ؟ ";
            
        }else {
                if(
file_exists($this->upload_dir $this->fileName["name"])) {
                    
$this->message " فایلی با نام " $this->fileName["name"] ."وجود دارد ";
                    
                } else {
                    
move_uploaded_file($this->fileName["tmp_name"], $this->upload_dir $this->fileName["name"]);
                    
$this->fileUploaded $this->fileName["name"];
                    
$addressFile =  $this->upload_dir .$this->fileName["name"];
                }
            }

    }
    
    public function 
uploadFile(){
        
// For File Zip , Pdf
        
$mime "application/pdf; charset=binary";
        
exec("file -bi " $this->fileName["tmp_name"], $out);
        if(
$out[0] != $mime) {
            echo 
"این فایل پی دی اف نیست خودتی";
            return 
false;
        }
    }
}

?>

اساتید گرام , به نظرتون اصلا این کد صحیح هست یا نه ؟؟
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان