J'utilise uploadify pour permettre à mes utilisateurs de télécharger des images via mon application Web.
Le problème que j'ai, c'est que de temps en temps (à ce qui semble être aléatoire) lorsque la barre de progression atteint 100%, elle "bloque" et ne fait rien. P>
Je me demandais si des développeurs familiers avec Uploadify peuvent avoir une idée de la façon de résoudre ce problème? Je suis en désespéré besoin d'une aide d'une aide. P>
Voici mon code frontail: p> et côté serveur: p> if (!empty($_FILES))
{
//Get user ID from the file path for use later..
$userID = getIdFromFilePath($_REQUEST['folder'], 3);
$row = mysql_fetch_assoc(getRecentAlbum($userID, "photo_album_personal"));
$subFolderName = $row['pk'];
//Prepare target path / file..
$tempFile = $_FILES['Filedata']['tmp_name'];
$targetPath = $_SERVER['DOCUMENT_ROOT'] . $_REQUEST['folder'] . '/'.$subFolderName.'/';
$targetFile = str_replace('//','/',$targetPath) . $_FILES['Filedata']['name'];
//Move uploaded file from temp directory to new folder
move_uploaded_file($tempFile,$targetFile);
//Now add a record to DB to reflect this personal image..
if(file_exists($targetFile))
{
//add photo record to DB
$directFilePath = $_REQUEST['folder'] . '/'.$subFolderName.'/' . $_FILES['Filedata']['name'];
addPersonalPhotoRecordToDb($directFilePath, $row['pk']);
}
echo "1";
die(true);
}
7 Réponses :
Cela semble être une erreur PHP. J'utiliserais Fiddler ou un problème similaire pour afficher la réponse PHP ou similaire. Vérifiez vos journaux d'erreur PHP, ils pourraient éclairer une certaine lumière. P>
Heya, j'ai vraiment apprécié votre réponse alors merci. Fiddler tu dis? Je n'ai pas entendu parler de cela, donc je vais faire la question et vous laissera savoir comment je vais savoir :) En ce qui concerne les journaux d'erreur, j'utilise une hébergement choom (Hostgator) et je ne pense pas avoir accès.
Fondamentalement, votre code n'atteint jamais 'echo "1" ". Vous pouvez faire écho à des points d'arrêt sur le chemin de votre code et utilisez Firebug pour voir les résultats. Je suis couru dans cela avant et il vous suffit de faire du débogage de la vieille école jusqu'à ce que vous trouviez l'erreur dans votre code.
Wow c'est sérieusement utile jnunn, je vais essayer cette première chose le matin. Où en Firebug voyez-vous que le serveur répond? Je suis utilisé pour regarder la demande d'obtention / poste sortant
Hey les gars, je ne vois aucune réponse du fichier PHP (illustré ci-dessus) en Firebug, je manque quelque chose?
+1 C'est le cas le plus probable. Si tout le reste échoue, essayez d'écrire les points d'arrêt dans un fichier journal. Assurez-vous également que vous avez error_rporting (e_all); code> activé afin que vous voyiez réellement les messages d'erreur.
Salut Pekka Merci pour votre réponse. Pourriez-vous expliquer un peu de quoi les points d'arrêt sont, dans l'ONU-familier avec le terme. Aussi avec les rapports d'erreur, où sont les erreurs écrites? Merci beaucoup
J'ai eu un problème similaire il y a quelque temps avec Uploadify (en utilisant ASP.NET MVC) - mais vous trouverez certainement des informations utiles sur la manipulation et le comportement des événements de téléchargement dans la réponse affichée! Sa disponible ici P>
Bonjour Jimbo, j'apprécie vraiment votre contribution. J'ai essayé de mettre "Echo 1" en haut en haut du script afin qu'il soit renvoyé par le script, quelle que soit la distance du script, mais d'obtenir toujours des fichiers suspendus au hasard. J'ai également essayé d'utiliser Firebug pour voir ce que le fichier PHP revient, mais je ne vois rien dans la réponse. Je suis à une perte totale :(
Vous ne serez pas en mesure de voir la réponse PHP avec Firebug, car la demande est générée par Flash. C'est pourquoi j'ai suggéré: Fiddler2.com/fiddler2 afin que vous puissiez voir la réponse PHP réelle
Ok je te comprends maintenant, malade vous laisser les gars savoir ce que je trouve!
OK, Well Fiddler rapporte ce qui suit sur un téléchargement réussi: 3 1 1 0 qui est bizarre parce que je pensais que c'était seulement censé retourner un 1!
Droite IVE fait quelque chose de tripdling et le résultat est que lorsqu'un fichier est suspendu le serveur renvoie exactement la même réponse que pour tous les fichiers qui ont terminé avec succès: 3 1 1 0 commentaires très appréciés :)
Maty, confirmez que vos handicats d'événements ont été déclarés sans guillemets inversés? J'ai constaté que uploLodify Evens n'intégrerait parfois que s'ils avaient été déclarés avec 'OnComplete': fonction (événement ... code> - Supprimer des virgules inversées semble résoudre le problème
Bonjour Jimbo, ils ont été déclarés avec des virgules Oui, je vais les supprimer et vous laisser savoir le résultat. Merci encore pour votre aide
Ce sont les étapes que je prendriez, afin que: p>
1) soit 100% certain que vous obtenez une réponse 200 de votre serveur. Sinon, c'est le problème p>
2) Utilisez la dernière et la plus grande UPLaodify et JQuery P>
3) Vérification des erreurs JS (Console Firebug ou navigateur JS Debugger fonctionnera) P>
4) Mettez à niveau votre lecteur Flash (si cela résout, vous pouvez alors nécessiter une version plus élevée) P>
5) Mettez des instructions de débogage dans la source de téléchargement, spécifiquement dans le gestionnaire complet pour être sûr qu'il est appelé p>
6) Si la progression atteint 100%, mais que le gestionnaire n'ait jamais été appelé, j'ai bien peur que la prochaine étape ne soit pas de plonger dans l'ActionScript et d'utiliser le débogueur ou certaines relevés de trace pour déterminer où se trouve l'erreur. Cela peut signifier qu'il y a un bogue dans l'appelant la fonction d'interface externe p>
7) Si vous faites des correctifs, soumettez-la à télécharger p>
check votre php.ini code> fichier pour
post_max_size code> paramètre. Il doit être> =
upload_max_filesize code> paramètre. Pour plus de détails, voir http://php.net/post-max-size . p>
Pour une référence future: j'ai eu ce problème lors de l'envoi de données au script de téléchargement à l'aide de "scriptdata" et résolu en faisant écho à "OK" dans le script de téléchargement plutôt que d'envoyer un document vide. P>
Le problème avec lequel j'ai trouvé, c'est qu'il pense alors que le fichier est terminé avec succès.
Pour ceux qui utilisent des Macs utilisent Scoop HTTP pour afficher la demande car Firebug ne s'affiche pas ce. Plus sur http scoop de Ceci Blog . P>
J'ai eu le même problème.
Ajouter simplement echo "astlavista babi" code> à votre script uploadify, cette instruction ECHO devrait être la dernière ligne, si vous avez une instruction conditionnelle, ECHO doit être placé comme une dernière ligne dans la déclaration conditionnelle. P >
Utiliser la pile déborder la fonction de code pour rendre le code plus lisible