salve ragazzi... piccolo problema da risolvere, ho scaricato uno script che esegue l'upload di immagini con barra di progresso... ora, il problema è che l'upload sul pc si esegue perfettamente mentre sull'ipad e sull'iphone ( e non ho provato altri dispositivi mobile ) a memoria svuotata ne caricare una e se carico altre mi visualizza sempre la prima non eseguendo l'upload... come risolvo ?
questo è il form
codice:
<div id="output"></div>
<div class="buttonphoto">
<div id="statustxt">Select photo</div >
<div id="progressbox">
<div id="progressbar"></div >
</div>
<div class="fomrpho">
<form action="processupload.php" method="post" enctype="multipart/form-data" id="UploadForm">
<input name="ImageFile" type="file" />
</form>
</div>
</div>
questo lo script che esegue l'ajaxForm

codice:
$(document).ready(function() {
	 
	 $("input[name='ImageFile']").change(function(){
    	$('#UploadForm').submit();
		}); 
		
		//elements
		var progressbox 	= $('#progressbox');
		var progressbar 	= $('#progressbar');
		var statustxt 		= $('#statustxt');
		var myform 			= $("#UploadForm");
		var output 			= $("#output");
		var completed 		= '0%';

		
				$(myform).ajaxForm({
					beforeSend: function() { //brfore sending form
						statustxt.empty();
						progressbox.show(); //show progressbar
						progressbar.width(completed); //initial value 0% of progressbar
						
					},
					uploadProgress: function(event, position, total, percentComplete) { //on progress
						progressbar.width(percentComplete + '%') //update progressbar percent complete
						

					
						},
					complete: function(response) { // on complete
					
						output.html(response.responseText); //update element with received data
						myform.resetForm();  // reset form
						progressbox.hide(); // hide progressbar
						statustxt.html('Select photo'); //set status text
						var lacacca = output.find('img').attr('src');
						$('#mask-a').attr('onclick', 'closeEverything("' + lacacca + '");');
						$('#postit').attr('action', 'photo.php?url=' + lacacca);
						setTimeout(function() {
    					$('#wrap').masonry( 'reload');
						}, 500);
						
						
					}
					
			});
			
			return false;
			
			
			
			
			
        });
questa la pagina dove si esegue l'upload

Codice PHP:

<noscript>
<div align="center">[url="index.php"]Go Back To Upload Form[/url]</div>
</noscript>

<?php


if(isset($_POST)) 
{    
    
//settaggi

    
$ThumbSquareSize         600
    
$BigImageMaxSize         640
    
$ThumbPrefix            "temp_"
    
$DestinationDirectory    'file_temp/'
    
$Quality                 90;

    if(!isset(
$_FILES['ImageFile']) || !is_uploaded_file($_FILES['ImageFile']['tmp_name']))
    {
            die(
'Something went wrong with Upload!'); 
    }
    
    
//verifico formato
    
    
$RandomNumber     rand(09999999999); 

    
$ImageName         str_replace(' ','-',strtolower($_FILES['ImageFile']['name'])); 
    
$ImageSize         $_FILES['ImageFile']['size']; 
    
$TempSrc         $_FILES['ImageFile']['tmp_name']; 
    
$ImageType         $_FILES['ImageFile']['type']; 

    switch(
strtolower($ImageType))
    {
        case 
'image/png':
            
$CreatedImage =  imagecreatefrompng($_FILES['ImageFile']['tmp_name']);
            break;
        case 
'image/gif':
            
$CreatedImage =  imagecreatefromgif($_FILES['ImageFile']['tmp_name']);
            break;            
        case 
'image/jpeg':
        case 
'image/pjpeg':
            
$CreatedImage imagecreatefromjpeg($_FILES['ImageFile']['tmp_name']);
            break;
        default:
            die(
'Unsupported File!'); 
    }
    
    
//recupero informazioni
    
    
list($CurWidth,$CurHeight)=getimagesize($TempSrc);

    
$ImageExt substr($ImageNamestrrpos($ImageName'.'));
      
$ImageExt str_replace('.','',$ImageExt);

    
$ImageName         preg_replace("/\\.[^.\\s]{3,4}$/"""$ImageName); 

    
$NewImageName $RandomNumber.'.'.$ImageExt;

    
$thumb_DestRandImageName     $DestinationDirectory.$ThumbPrefix.$NewImageName
    
$DestRandImageName             $DestinationDirectory.$NewImageName
    
    
//creo immagine

    
if(resizeImage($CurWidth,$CurHeight,$BigImageMaxSize,$DestRandImageName,$CreatedImage,$Quality,$ImageType))
    {
        
        if(!
cropImage($CurWidth,$CurHeight,$ThumbSquareSize,$thumb_DestRandImageName,$CreatedImage,$Quality,$ImageType))
            {
                echo 
'Error Creating thumbnail';
            }

        list(
$ResizedWidth,$ResizedHeight)=getimagesize($DestRandImageName); ?>

        <div class="thumbphoto" onclick="stampa('<? echo $DestRandImageName ?>');">
        [img]file_temp/<? echo $ThumbPrefix.$NewImageName ?>[/img]
        </div>
        
        <?
        
    
}else{
        die(
'Resize Error'); 
    }

}

//resize

function resizeImage($CurWidth,$CurHeight,$MaxSize,$DestFolder,$SrcImage,$Quality,$ImageType)
{

    if(
$CurWidth <= || $CurHeight <= 0
    {
        return 
false;
    }

    
$ImageScale          min($MaxSize/$CurWidth$MaxSize/$CurHeight); 
    
$NewWidth              ceil($ImageScale*$CurWidth);
    
$NewHeight             ceil($ImageScale*$CurHeight);
    
    if(
$CurWidth $NewWidth || $CurHeight $NewHeight)
    {
        
$NewWidth $CurWidth;
        
$NewHeight $CurHeight;
    }
    
$NewCanves     imagecreatetruecolor($NewWidth$NewHeight);

    if(
imagecopyresampled($NewCanves$SrcImage,0000$NewWidth$NewHeight$CurWidth$CurHeight))
    {
        switch(
strtolower($ImageType))
        {
            case 
'image/png':
                
imagepng($NewCanves,$DestFolder);
                break;
            case 
'image/gif':
                
imagegif($NewCanves,$DestFolder);
                break;            
            case 
'image/jpeg':
            case 
'image/pjpeg':
                
imagejpeg($NewCanves,$DestFolder,$Quality);
                break;
            default:
                return 
false;
        }
        
    if(
is_resource($NewCanves)) {imagedestroy($NewCanves);} 
    return 
true;
    }

}

//crop
function cropImage($CurWidth,$CurHeight,$iSize,$DestFolder,$SrcImage,$Quality,$ImageType)
{     

    if(
$CurWidth <= || $CurHeight <= 0
    {
        return 
false;
    }
    
    if(
$CurWidth>$CurHeight)
    {
        
$y_offset 0;
        
$x_offset = ($CurWidth $CurHeight) / 2;
        
$square_size     $CurWidth - ($x_offset 2);
    }else{
        
$x_offset 0;
        
$y_offset = ($CurHeight $CurWidth) / 2;
        
$square_size $CurHeight - ($y_offset 2);
    }
    
    
$NewCanves     imagecreatetruecolor($iSize$iSize);    
    if(
imagecopyresampled($NewCanves$SrcImage,00$x_offset$y_offset$iSize$iSize$square_size$square_size))
    {
        switch(
strtolower($ImageType))
        {
            case 
'image/png':
                
imagepng($NewCanves,$DestFolder);
                break;
            case 
'image/gif':
                
imagegif($NewCanves,$DestFolder);
                break;            
            case 
'image/jpeg':
            case 
'image/pjpeg':
                
imagejpeg($NewCanves,$DestFolder,$Quality);
                break;
            default:
                return 
false;
        }

    if(
is_resource($NewCanves)) {imagedestroy($NewCanves);} 
    return 
true;
    }
      
}
Ripeto sui pc funziona, su iphone e ipad no