15 juin 2008
Bug de l’upload flash sous mac
Article publié dans la catégorie flash, php | lu 860 fois |

Dernièrement sur le projet d’un client j’ai eu à réaliser un petit module d’upload de fichiers en AS3.
A priori rien de bien compliqué… et pourtant.
Sous PC pas de soucis.
Mon client sous mac s’est vite rendu compte que l’uploader ne marchait pas sous safari mac, avec le player flash 9.
Sous mac, soit le fichier était correctement uploadé, mais l’événement onComplete ne se déclenchait pas, soit l’upload ne marchait pas du tout.
Après pas mal de tests, de recherches, quelques litres de café, et un paquet de cheveux en moins, j’ai finis par trouvé la solution.
procédure pour que l’upload flash marche sous safari mac:
- move_uploaded_file
En fait, au début j’utilisais la fonction php
copy ($Temp fileName,$NewFileName)
Sous mac, cette méthode ne marche pas du tout, le fichier n’étant pas uploadé sur le serveur.
A la place il faut utiliser la méthode
move_uploaded_file($Temp fileName,$NewFileName)
Avec le move_uploaded_file, les fichiers sont correctement uploadés sur le serveur. Par contre, le onComplete de FileReference ne se déclenche toujours pas.
- echo $Résult
Pour pouvoir déclencher l’évènement il faut dans le fichier php, après l’upload , faire une echo $UnVariableQuelConque :
$result = move_uploaded_file($_FILES['Filedata']['tmp_name'] , $uploadfile); if ($result) { $message = "upload Success"; } else { $message = "upload failed"; } echo $message;
et voila avec cette méthode l’upload de fichier marche enfin sous safari mac.
Commentaires
Merci bien , j’avais juste le pb des “echo” à mettre.
Un grand merci pour m’avoir fait debuggé ce pb safari ![]()
Le 7 août 2008 à 19:19, par Jeromme