2010-03-06 4 views
2

J'essaye d'implémenter SwfUpload dans ma page Web, et j'emploie le php pour enregistrer des dossiers sur le serveur. Comme c'est la première fois que j'utilise ce composant, je choisis de lancer l'algoritm proposé par l'équipe SwfUpload (http://swfupload.org/forum/generaldiscussion/214): je l'ai mis dans un fichier et j'ai dit le contrôle pour l'utiliser comme fichier de code.PHP et SwfUpload

Cela n'a pas fonctionné, car je demande de l'aide, mais ce qui me rend vraiment fou, c'est que je ne sais vraiment pas comment déboguer ce genre de choses! La requête au fichier est encapsulée dans l'objet flash, et je ne peux pas recevoir de commentaires en cas de problème.

Quelqu'un est plus expérimenté que moi sur ce contrôle?

Merci

Répondre

1

Une chose que vous pouvez faire si tout le reste échoue, est de faire upload.php ajouter à un fichier journal de vos messages de débogage. La seule chose difficile à propos de swfupload que vous devez comprendre, c'est que le composant flash est exécuté avec un cookie jar différent (pour des raisons de sécurité), vous devez donc le dire manuellement (via un paramètre flash) l'ID de session que vous avez actuellement sur le serveur, ainsi quand il fait la demande de HTTP à upload.php il passe ce session_id dans un $_GET param et le manuscrit de php commence la session avec cet id spécifique: session_start($_GET['SESSION_ID']);. A partir de ce moment, upload.php se comporte comme n'importe quel autre code php avec les données de session disponibles. Vous obtenez le $_FILES, déplacez-les dans leur dossier respectif, enregistrez-les dans db, et c'est tout.

0

Eh bien SWFUpload a besoin de télécharger le fichier à un script, vous pouvez vous connecter à un fichier à partir de ce script à partir des données reçues ...

0

Oh, c'est une douleur à déboguer. Une manière d'obtenir la sortie du script (qui peut être des erreurs fatales que vous ne pouvez pas enregistrer ou quelque chose) est d'utiliser un proxy comme fiddler qui vous montre tout le trafic http.

Il est parfois difficile d'obtenir du flash en utilisant le proxy. Vous devrez peut-être configurer le proxy dans IE même si vous utilisez un autre navigateur.

Questions connexes