PX : code

SDImageUploading by sexdev
Download this code


<?
/*----------------------------------------------------------------------------------
| Class SDImageUploading image uploading                                            |
| Powered by www.SexDev.com Adult Software Development
| Example:                                                                            |
| <?                                                                                |
|    $iu = new SDImageUploading();                                                    |
|    // \'newname\' - optional field, leave it                                         |
|    //empty if you want to use original file name                                     |
|    $iu->doUpload(\'/usr/html/images/\',$HTTP_POST_FILES[\"img\"],\'newname\');            |
|    //return uploaded image name (include server path) or false                        |
|                                                                                     |
|     //Also you can print error code (if false result returned)                        |
|     echo $iu->error                                                                    |
| ?>                                                                                |
-----------------------------------------------------------------------------------*/
class SDImageUploading {
    var $disk_path;            //disk path where new image will be uploaded
    var $new_uimage_name;    //new image name
    var $uimage_extension;    //new image extension
    var $uimage;            //uploaded image
    var $error;                //error code
    var $uploaded_file;        //succesfully uploaded file name
    
    //check image type function
    function addcheckImgType(){ 
        if((strcmp($this->uimage[\'type\'],\'image/jpeg\')==0)||(strcmp($this->uimage[\'type\'],\'image/gif\')==0)|| (strcmp($this->uimage[\'type\'],\'image/pjpeg\')==0)||(strcmp($this->uimage[\'type\'],\'image/jpg\')==0)||(strcmp($this->uimage[\'type\'],\'image/x-png\')==0)){ 
            switch($this->uimage[\'type\']){ 
                  case \'image/jpg\': 
                      $this->uimage_extension = \'.jpg\'; 
                  break; 
                  case \'image/jpeg\': 
                      $this->uimage_extension = \'.jpg\'; 
                  break; 
                  case \'image/pjpeg\': 
                      $this->uimage_extension = \'.jpg\'; 
                  break; 
                  case \'image/gif\': 
                      $this->uimage_extension = \'.gif\'; 
                  break;  
                  case \'image/x-png\':
                      $this->uimage_extension = \'.png\';
                  break;
              }
              return true; 
         }else{ 
             $this->error .= \'<br>Invalid image type \'.$this->uimage[\'type\'];
             return false;
         } 
    } 
    
    //start upload and check image type
    function doUpload($new_disk_path,$new_uimage,$new_uimage_name=\'\'){
        $this->disk_path = $new_disk_path;
        $this->uimage = $new_uimage;
        $this->uploaded_file = \'\';
        if($new_uimage_name != \'\'){
            $this->new_uimage_name = $new_uimage_name;
        }else{
            $this->new_uimage_name = $this->uimage_name;
        }
        
        $this->addcheckImgType();
        
        if($this->uimage_extension){
            $uimageFinal = $this->disk_path.$this->new_uimage_name.$this->uimage_extension;
            if(copy($this->uimage[\'tmp_name\'], $uimageFinal)){
                $this->uploaded_file = $this->new_uimage_name.$this->uimage_extension;
                return $uimageFinal;
            }else{
                $this->error .= \'<br>Cannot copy image to \'.$uimageFinal.\'. Check chmod and server path \'.$this->disk_path;
                return false;
            }
        }else{
            $this->error .= \'<br>Can not get image extension \'.$this->uimage_extension;
            return false;
        }
    }
}
?>

Comments or questions?
PX is running PHP 5.2.17
Thanks to Miranda Productions for hosting and bandwidth.
Use of any code from PX is at your own risk.