%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/devcapijob/public_html/gestion/liberary/
Upload File :
Create Path :
Current File : /home/devcapijob/public_html/gestion/liberary/uploadify.php

<?php
/*
Uploadify
Copyright (c) 2012 Reactive Apps, Ronnie Garcia
Released under the MIT License <http://www.opensource.org/licenses/mit-license.php> 
*/

// Define a destination
//$targetFolder = '../../files_perso/galeries/big/'; // Relative to the root
$targetFolder       = $_POST['folder'].'big/';
$targetFolderSmall  = $_POST['folder'].'small/';
$targetFolderMedium = $_POST['folder'].'medium/';

define('MAX_WIDTH_BIG',$_POST['bw']);
define('MAX_HEIGHT_BIG',$_POST['bh']);
define('MAX_WIDTH_SMALL',$_POST['sw']);
define('MAX_HEIGHT_SMALL',$_POST['sh']);
define('MAX_WIDTH_MEDIUM',$_POST['mw']);
define('MAX_HEIGHT_MEDIUM',$_POST['mh']);

if (!empty($_FILES)) {
	$fichier  = $_FILES['Filedata'];
	$tempFile = $_FILES['Filedata']['tmp_name'];
	$targetPath = $targetFolder;
	$name_part   = explode('.',$_FILES['Filedata']['name']);
	if($name_part!=0){ $ext = $name_part[count($name_part)-1];}
	$name       = 'img_'.randomname().'.'.$ext;
	$targetFile = rtrim($targetPath,'/') . '/' . $name;
	
	// Validate the file type
	$fileTypes = array('JPG','JPEG','jpg','jpeg','gif','png'); // File extensions
	$fileParts = pathinfo($_FILES['Filedata']['name']);
	
	if (in_array($fileParts['extension'],$fileTypes)) {
		if(move_uploaded_file($tempFile,$targetFile)){
			
			$imgsize=getimagesize($targetFolder.$name);
			fctredimimage(MAX_WIDTH_BIG,MAX_HEIGHT_BIG, $targetFolder, $name, $targetFolder, $name);
			if($imgsize[0]>MAX_WIDTH_SMALL || $imgsize[1]>MAX_HEIGHT_SMALL){
				fctredimimage(MAX_WIDTH_SMALL, MAX_HEIGHT_SMALL, $targetFolderSmall, $name, $targetFolder, $name);
			}else{
				copy($targetFolder.$name,$targetFolderSmall.$name);
			}
			if($imgsize[0]>MAX_WIDTH_MEDIUM || $imgsize[1]>MAX_HEIGHT_MEDIUM){
				fctredimimage(MAX_WIDTH_MEDIUM, MAX_HEIGHT_MEDIUM,$targetFolderMedium, $name, $targetFolder, $name);
			}else{
				copy($targetFolder.$name,$targetFolderMedium.$name);
			}
			
			echo $name;
		}
	} else {
			echo 'Type de fichier invalide.';
	}
}

function fctredimimage($W_max, $H_max, $rep_Dst, $img_Dst, $rep_Src, $img_Src) {


 // ------------------------------------------------------------------
 $condition = 0;
 // Si certains parametres ont pour valeur '' :
   if ($rep_Dst == '') { $rep_Dst = $rep_Src; } // (meme repertoire)
   if ($img_Dst == '') { $img_Dst = $img_Src; } // (meme nom)
 // ------------------------------------------------------------------
 // si le fichier existe dans le répertoire, on continue...
 if (file_exists($rep_Src.$img_Src) && ($W_max!=0 || $H_max!=0)) { 
   // ----------------------------------------------------------------
   // extensions acceptees : 
   $ExtfichierOK = '" jpg jpeg png"'; // (l espace avant jpg est important)
   // extension fichier Source
   $tabimage = explode('.',$img_Src);
   $extension = $tabimage[sizeof($tabimage)-1]; // dernier element
   $extension = strtolower($extension); // on met en minuscule
   // ----------------------------------------------------------------
   // extension OK ? on continue ...
   if (strpos($ExtfichierOK,$extension) != '') {
      // -------------------------------------------------------------
      // recuperation des dimensions de l image Src
      $img_size = getimagesize($rep_Src.$img_Src);
      $W_Src = $img_size[0]; // largeur
      $H_Src = $img_size[1]; // hauteur
      // -------------------------------------------------------------
      // condition de redimensionnement et dimensions de l image finale
      // -------------------------------------------------------------
      // A- LARGEUR ET HAUTEUR maxi fixes
      if ($W_max != 0 && $H_max != 0) {
         $ratiox = $W_Src / $W_max; // ratio en largeur
         $ratioy = $H_Src / $H_max; // ratio en hauteur
         $ratio = max($ratiox,$ratioy); // le plus grand
         $W = $W_Src/$ratio;
         $H = $H_Src/$ratio;   
         $condition = ($W_Src>$W) || ($W_Src>$H); // 1 si vrai (true)
      }      // -------------------------------------------------------------
      // B- HAUTEUR maxi fixe
      if ($W_max == 0 && $H_max != 0) {
         $H = $H_max;
         $W = $H * ($W_Src / $H_Src);
         $condition = $H_Src > $H_max; // 1 si vrai (true)
      }
      // -------------------------------------------------------------
      // C- LARGEUR maxi fixe
      if ($W_max != 0 && $H_max == 0) {
         $W = $W_max;
         $H = $W * ($H_Src / $W_Src);         
         $condition = $W_Src > $W_max; // 1 si vrai (true)
      }
      // -------------------------------------------------------------
      // on REDIMENSIONNE si la condition est vraie
      // -------------------------------------------------------------
      // Par defaut : 
	  // Si l'image Source est plus petite que les dimensions indiquees :
	  // PAS de redimensionnement.
	  // Mais on peut "forcer" le redimensionnement en ajoutant ici :
	  // $condition = 1;
      if ($condition == 1) {
         // ----------------------------------------------------------
         // creation de la ressource-image "Src" en fonction de l extension
         switch($extension) {
         case 'jpg':
         case 'jpeg':
           $Ress_Src = imagecreatefromjpeg($rep_Src.$img_Src);
           break;
         case 'png':
           $Ress_Src = imagecreatefrompng($rep_Src.$img_Src);
           break;
         }
         // ----------------------------------------------------------
         // creation d une ressource-image "Dst" aux dimensions finales
         // fond noir (par defaut)
         switch($extension) {
         case 'jpg':
         case 'jpeg':
           $Ress_Dst = imagecreatetruecolor($W,$H);
           break;
         case 'png':
           $Ress_Dst = imagecreatetruecolor($W,$H);
           // fond transparent (pour les png avec transparence)
           imagesavealpha($Ress_Dst, true);
           $trans_color = imagecolorallocatealpha($Ress_Dst, 0, 0, 0, 127);
           imagefill($Ress_Dst, 0, 0, $trans_color);
           break;
         }
         // ----------------------------------------------------------
         // REDIMENSIONNEMENT (copie, redimensionne, re-echantillonne)
         imagecopyresampled($Ress_Dst, $Ress_Src, 0, 0, 0, 0, $W, $H, $W_Src, $H_Src); 
         // ----------------------------------------------------------
         // ENREGISTREMENT dans le repertoire (avec la fonction appropriee)
         switch ($extension) { 
         case 'jpg':
         case 'jpeg':
           imagejpeg ($Ress_Dst, $rep_Dst.$img_Dst);
           break;
         case 'png':
           imagepng ($Ress_Dst, $rep_Dst.$img_Dst);
           break;
         }
         // ----------------------------------------------------------
         // liberation des ressources-image
         imagedestroy ($Ress_Src);
         imagedestroy ($Ress_Dst);
      }
      // -------------------------------------------------------------
   }
 }
// 	---------------------------------------------------------------
 // si le fichier a bien ete cree
 if ($condition == 1 && file_exists($rep_Dst.$img_Dst)) { return true; }
 else { return false; }}
 
function randomname($lenth =5) {

    $aZ09 = range(0, 9);
    $out ='';
    for($c=0;$c < $lenth;$c++) {
       $out .= $aZ09[mt_rand(0,count($aZ09)-1)];
    }
    return $out;
	} 


?>

Zerion Mini Shell 1.0