Ciao a tutti, è la prima volta che mi imbatto nell'implementazione di uno script che permetta agli utenti di fare l'upload di immagini...
Sto utilizzando UberUploadCropper e volevo sapere quali sono i controlli di sicurezza PHP necessari per evitare il caricamento di shell (c99/r57 le più comuni) o comunque cose che possano fare danni seri..

Purtroppo non saprei da dove cominciare quindi attendo i vostri,sempre preziosissimi, consigli...

Vi posto il codice del file che viene richiamato dalla funzione asincrona:

upload.php
Codice PHP:

define
('DS'DIRECTORY_SEPARATOR);
define('CURR_DIR'dirname(__FILE__) . DS);
define('UPLOAD_DIR'CURR_DIR "uploads"DS);

require 
"../scripts".DS."fileuploader".DS."fileuploader.php";

$allowedExtensions = array('jpeg','jpg','gif','png','tiff','bmp');
$sizeLimit 1024 1024// max file size in bytes
$uploader = new qqFileUploader($allowedExtensions$sizeLimit);

$result $uploader->handleUpload(UPLOAD_DIRfalsemd5(uniqid())); 

require 
"gd_image.php";
$gd = new GdImage();

// step 1: make a copy of the original
$filePath UPLOAD_DIR $result['filename'];
$copyName $gd->createName($result['filename'], '_FULLSIZE');
$gd->copy($filePathUPLOAD_DIR.$copyName);


// step 2: Scale down or up this image so it fits in the browser nicely, lets say 500px is safe
$oldSize $gd->getProperties($filePath);
$newSize $gd->getAspectRatio($oldSize['w'], $oldSize['h'], 5000);

$gd->resize($filePath$newSize['w'], $newSize['h']);

// to pass data through iframe you will need to encode all html tags
echo json_encode($result);exit(); 
Vi ringrazio anticipatamente!!!!