|
Forum Flash, Actionscript, PHP e MySQL
|
|
|
|
|
|
| Autore |
Messaggio |
suns
esperto

Età: -1988
Registrato: 20/07/05 23:53
Messaggi: 537
|
Oggetto: far partire azione solo dopo quando upload php riuscito
Inviato: 19.02.10 | 13:22 |
|
|
salve signori.
espongo il problema.
uso il file reference per inviare una foto da flash al server in questo modo:
| Codice: | listener.onSelect = function(selectedFile:FileReference):Void {
//trace(selectedFile.name);
selectedFile.upload("upload.php");
};
listener.onProgress = function(selectedFile:FileReference, bytesLoaded:Number, bytesTotal:Number):Void {
//preloader
};
listener.onComplete = function(selectedFile:FileReference):Void {
//trace(selectedFile.name);
downloadImage(selectedFile.name);
barra2._visible = false;
//invio file al flash e applico il resize
sendImg = new LoadVars();
sendImg.foto = selectedFile.name;
sendImg.sendAndLoad("resize.php",sendImg,"POST");
sendImg.onLoad = function(success) {
//trace(selectedFile.name);
};
};
var imageFile:FileReference = new FileReference();
imageFile.addListener(listener);
pul.onPress = uploadImage;
function uploadImage(event:Object):Void {
imageFile.browse([{description:"Immagini per allthefaces.com", extension:"*.jpg;*.gif;*.png"}]);
}
imagePane.addEventListener("complete",imageDownloaded);
function downloadImage(file:Object):Void {
//imagePane.contentPath = "http://www.allthefaces.com/script/img/"+file;
trace(img);
} |
il mio problema è che quando intervengo su listener.onComplete e carico l'img non ha ancora effettuato il resize in php, quindi mi carica la foto grande.
come faccio a dire a flash di caricare quella foto in un contenitore solo dopo che il resize è completato?
dovrei dire tipo if(resizeok) continua...il problema è che nn so far interagire php con flash.
metto anche il file di resize:
| Codice: | <?php
$imgSrc = ($_POST['foto']);
//getting the image dimensions
list($width, $height) = getimagesize("img/" . $imgSrc);
//saving the image into memory (for manipulation with GD Library)
$myImage = imagecreatefromjpeg("img/" . $imgSrc);
if($width > $height) $biggestSide = $width;
else $biggestSide = $height;
//The crop size will be half that of the largest side
$cropPercent = .5;
$cropWidth = $biggestSide*$cropPercent;
$cropHeight = $biggestSide*$cropPercent;
//getting the top left coordinate
$c1 = array("x"=>($width-$cropWidth)/2, "y"=>($height-$cropHeight)/2);
$thumbSize = 150;
$thumb = imagecreatetruecolor($thumbSize, $thumbSize);
imagecopyresampled($thumb, $myImage, 0, 0, $c1['x'], $c1['y'], $thumbSize, $thumbSize, $cropWidth, $cropHeight);
imagejpeg($thumb, "img/" . $imgSrc , 100);
?> |
____________________________________________________________ .... |
|
| Torna in cima |
|
|
Sponsor
|
|
 |
Coach
amministratore


Età: -1981
Registrato: 31/01/03 13:50
Messaggi: 4546
Località: Verona
|
Oggetto:
Inviato: 19.02.10 | 19:34 |
|
|
Bene,
vedo che finalmente inizia ad usare la Docs
» Aggiunta della funzionalità di caricamento file a un'applicazione
Però dovresti copiare ed incollare il codice, cercando di capire come funziona :)
il trace(img) a cosa ti serve? non doveva essere trace(file)? :)
Perchè metti come datatype Object, quando invece gli passi una String?
Hai provato a mettere il codice del resize, nello stesos file dell'upload?
Rinominando solamente il file con thumb_ + nome del file?
E quindi in flash caricando thumb_ + nome del file?
P.S: attenzione che il codice che stai usando in PHP per il resize... non andrà bene per le GIF e PNG ____________________________________________________________
Il Forum è uno strumento di condivisione, oltre a fare DOMANDE, si possono anche dare RISPOSTE! |
|
| Torna in cima |
|
|
suns
esperto

Età: -1988
Registrato: 20/07/05 23:53
Messaggi: 537
|
Oggetto:
Inviato: 20.02.10 | 01:46 |
|
|
allora penso proprio che farò come dici unendo upload e resize.
per quanto riguarda il nome ho risolto mettendo una funzione random, in pratica non deve succedere che due foto caricate abbiano stesso nome...cosa che potrebbe accadere se io e te carichiamo ad esempio io.jpg
poi ho risolto facendo un echo nel php e richiamndolo in flash nell'onload.
poi hai detto bene che funziona solo per jpg...c'è un modo per ricavare l'estensione della foto e aggiungerla in seguito?
avevo pensato al substring....è fattibile magari prendendo il nome dal punto in poi?
grazie.... ____________________________________________________________ .... |
|
| Torna in cima |
|
|
suns
esperto

Età: -1988
Registrato: 20/07/05 23:53
Messaggi: 537
|
|
| Torna in cima |
|
|
Coach
amministratore


Età: -1981
Registrato: 31/01/03 13:50
Messaggi: 4546
Località: Verona
|
Oggetto:
Inviato: 02.03.10 | 10:38 |
|
|
Bhè, hai provato con altri formati di immagine?
Tu usi imagejpeg, ma ci sono anche: imagepng e imagegif ad esempio ;) ____________________________________________________________
Il Forum è uno strumento di condivisione, oltre a fare DOMANDE, si possono anche dare RISPOSTE! |
|
| Torna in cima |
|
|
suns
esperto

Età: -1988
Registrato: 20/07/05 23:53
Messaggi: 537
|
Oggetto:
Inviato: 02.03.10 | 15:07 |
|
|
all'inizio non lo sapevo ,poi mi son informato.
cmq ho un problema.
quando faccio il post dell'img in php c'è il modo per prendere solo l'estensione?
così controllo il tipo di estensione e salvo la relativa immagine....oppure posso comunque salvarla sempre cm jpg?
in questo modo però le png non le risalva....fa solo l'upload.
come mai? ____________________________________________________________ .... |
|
| Torna in cima |
|
|
Coach
amministratore


Età: -1981
Registrato: 31/01/03 13:50
Messaggi: 4546
Località: Verona
|
|
| Torna in cima |
|
|
suns
esperto

Età: -1988
Registrato: 20/07/05 23:53
Messaggi: 537
|
Oggetto:
Inviato: 02.03.10 | 16:49 |
|
|
ok allora c'è qualcosa che non torna....l'echo in flash mi restituisce undefined e nn capisco il perchè :
| Codice: | <?php
$imgSrc = ($_POST['foto']);
$nome = $imgSrc
$estensione = strtolower(substr($nome, strrpos($nome, "."), strlen($nome)-strrpos($nome, ".")));
list($width, $height) = getimagesize("img/" . $imgSrc);
$myImage = imagecreatefromjpeg("img/" . $imgSrc);
if($width > $height) $biggestSide = $width;
else $biggestSide = $height;
$cropPercent = .5;
$cropWidth = $biggestSide*$cropPercent;
$cropHeight = $biggestSide*$cropPercent;
$c1 = array("x"=>($width-$cropWidth)/2, "y"=>($height-$cropHeight)/2);
$thumbSize = 150;
$thumb = imagecreatetruecolor($thumbSize, $thumbSize);
function img_rand($len, $chars = "abcdefghijklmnopqrstuvwxyz0123456789"){
$string = "";
for ($i = 0; $i < $len; $i++){
$post = rand(0, strlen($chars)-1);
$string .= $chars{$post};
}
return $string;
}
$nuovo_nome = img_rand(10) . "." . $estensione; //o un qualsiasi altro valore
imagecopyresampled($thumb, $myImage, 0, 0, $c1['x'], $c1['y'], $thumbSize, $thumbSize, $cropWidth, $cropHeight);
if($estensione="jpg"){
imagejpeg($thumb, "img/" . $nuovo_nome , 100);
}else if($estensione="jpeg"){
imagejpeg($thumb, "img/" . $nuovo_nome , 100);
}else if ($estensione="gif"){
imagegif($thumb, "img/" . $nuovo_nome , 100);
}else if ($estensione="png"){
imagepng($thumb, "img/" . $nuovo_nome , 100);
}
unlink( "img/" . $imgSrc);
echo "nome_immagine=$nuovo_nome";
?> |
sapresti aiutarmi? ____________________________________________________________ .... |
|
| Torna in cima |
|
|
Coach
amministratore


Età: -1981
Registrato: 31/01/03 13:50
Messaggi: 4546
Località: Verona
|
|
| Torna in cima |
|
|
suns
esperto

Età: -1988
Registrato: 20/07/05 23:53
Messaggi: 537
|
Oggetto:
Inviato: 06.03.10 | 18:40 |
|
|
mmm ho installato entrambi sapresti indicarmi come funzionano che manco ci ho capito nullA?
cmq se faccio partire il file php mi da questi errori (Ho corretto il ;)
| Codice: | Warning: getimagesize() [function.getimagesize]: Read error! in /home/mhd-01/www.allthefaces.com/htdocs/script/resize.php on line 7
Warning: imagecreatefromjpeg() [function.imagecreatefromjpeg]: 'img/' is not a valid JPEG file in /home/mhd-01/www.allthefaces.com/htdocs/script/resize.php on line 10
Warning: imagecopyresampled(): supplied argument is not a valid Image resource in /home/mhd-01/www.allthefaces.com/htdocs/script/resize.php on line 38
Warning: unlink(img/) [function.unlink]: Is a directory in /home/mhd-01/www.allthefaces.com/htdocs/script/resize.php on line 51
jpg |
mha!
p.s. una domanda ma se prendo l'immagine e ne copio tutto con quello che c'è scritto se salvo anche una png in jpeg mica è un errore?
cioè io sto salvando i pixel mica l'immagine giusto?
così facendo potrei evitare tt gli if.... ____________________________________________________________ .... |
|
| Torna in cima |
|
|
|
|
Non puoi inserire nuovi Topic in questo forum Non puoi rispondere ai Topic in questo forum Non puoi modificare i tuoi messaggi in questo forum Non puoi cancellare i tuoi messaggi in questo forum Non puoi votare nei sondaggi in questo forum Non puoi allegare files in questo forum Puoi downloadare gli allegati in questo forum
|
|