|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Invité de passage
![]() Webdesigner Inscription : février 2008 Messages : 4 ![]() |
Bonjour
J'ai un formulaire de création d'article avec possibilité de télécharger 3 photos, dans un nouveau dossier créé pour l'occasion. Or, lorsque l'on demande d'uploader 2 ou 3 photos, le résultat est aléatoire. Pour 2 images, je n'en ai qu'une de téléchargée, pour 3, c'est variable: des fois 1, des fois 2.... Si vous avez une idée, là, je sèche... Merci d'avance pour vos avis et conseils. Voici le code en question: Code :
Code :
|
||||
|
|
00
|
|
|
#2 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Commence par controler ce que contient $_FILES dans les cas ou ca ne fonctionne pas.
|
|
|
00
|
|
|
#3 |
![]() ![]() Benjamin DelespierreDéveloppeur Web Inscription : février 2010 Messages : 2 984 ![]() |
Mmmh ça ressemble à un problème du même genre que j'ai eu...
Fais un var_dump sur $_FILES ça sort quoi ?
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même). Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...". Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug. Les boutons et existent, servez-vous en
|
|
00
|
|
|
#4 | ||||
|
Invité de passage
![]() Webdesigner Inscription : février 2008 Messages : 4 ![]() |
je viens de faire
Code :
Code :
|
||||
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Webdesigner Inscription : février 2008 Messages : 4 ![]() |
et var_dump me répond ça:
Code :
array(1) { ["fichier"]=> array(5) { ["name"]=> array(3) { [0]=> string(12) "P1010001.JPG" [1]=> string(12) "P1010002.JPG" [2]=> string(12) "P1010003.JPG" } ["type"]=> array(3) { [0]=> string(10) "image/jpeg" [1]=> string(10) "image/jpeg" [2]=> string(10) "image/jpeg" } ["tmp_name"]=> array(3) { [0]=> string(14) "/tmp/phpQBiYIa" [1]=> string(14) "/tmp/phpjaKQrL" [2]=> string(14) "/tmp/php4DuKLI" } ["error"]=> array(3) { [0]=> int(0) [1]=> int(0) [2]=> int(0) } ["size"]=> array(3) { [0]=> int(669727) [1]=> int(705948) [2]=> int(616808) } } } array(1) { ["fichier"]=> array(5) { ["name"]=> array(3) { [0]=> string(12) "P1010001.JPG" [1]=> string(12) "P1010002.JPG" [2]=> string(12) "P1010003.JPG" } ["type"]=> array(3) { [0]=> string(10) "image/jpeg" [1]=> string(10) "image/jpeg" [2]=> string(10) "image/jpeg" } ["tmp_name"]=> array(3) { [0]=> string(14) "/tmp/phpQBiYIa" [1]=> string(14) "/tmp/phpjaKQrL" [2]=> string(14) "/tmp/php4DuKLI" } ["error"]=> array(3) { [0]=> int(0) [1]=> int(0) [2]=> int(0) } ["size"]=> array(3) { [0]=> int(669727) [1]=> int(705948) [2]=> int(616808) } } } array(1) { ["fichier"]=> array(5) { ["name"]=> array(3) { [0]=> string(12) "P1010001.JPG" [1]=> string(12) "P1010002.JPG" [2]=> string(12) "P1010003.JPG" } ["type"]=> array(3) { [0]=> string(10) "image/jpeg" [1]=> string(10) "image/jpeg" [2]=> string(10) "image/jpeg" } ["tmp_name"]=> array(3) { [0]=> string(14) "/tmp/phpQBiYIa" [1]=> string(14) "/tmp/phpjaKQrL" [2]=> string(14) "/tmp/php4DuKLI" } ["error"]=> array(3) { [0]=> int(0) [1]=> int(0) [2]=> int(0) } ["size"]=> array(3) { [0]=> int(669727) [1]=> int(705948) [2]=> int(616808) } } } |
|
|
00
|
|
|
#6 | ||||
![]() ![]() Benjamin DelespierreDéveloppeur Web Inscription : février 2010 Messages : 2 984 ![]() |
Hello
Je lisait ton code au passage et déjà, évite cette forme: Code :
Code :
ça va sécuriser les retour de formulaire, et éviter les warning sur des champs de tableau innexistants que tu devais sûrement avoir avant.
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même). Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...". Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug. Les boutons et existent, servez-vous en
|
||||
|
10
|
|
|
#7 | ||||||||
![]() ![]() Benjamin DelespierreDéveloppeur Web Inscription : février 2010 Messages : 2 984 ![]() |
Egalement, je te déconseille cette forme:
Code :
Code :
Ensuite, tu n'as pas besoin de tout ça : Code :
Code :
Au delà de ces améliorations mineures, je ne vois pas de problème particulier dans ton code. D'après ce que tu nous a fourni comme trace, je ne vois pas comment ton problème à pu survenir. j'en profite pour te rappeller au passage que isset et empty ont le même comportement vis-a-vis des variables non assignées: inutile de faire les deux vérifications, empty suffit.
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même). Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...". Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug. Les boutons et existent, servez-vous en
|
||||||||
|
10
|
|
|
#8 |
|
Invité de passage
![]() Webdesigner Inscription : février 2008 Messages : 4 ![]() |
Bonjour
Et merci Benjamin; je vais améliorer tout ça grâce à tes remarques. Mais.....J'ai réussi à solutionner mon problème d'upload. Le défaut venait du nouveau nom attribué à l'image; Bien qu'utilisant les fonctions date() et time(), les fichiers uploadés s'écrasaient car avaient le même nom...parfois..... La solution fut d'utiliser la fonction uniqid....MAIS, attention: Avec php5, le paramètre "facultatif" more_entropy...ne l'est pas Donc (valable surtout pour des uploads qui ne nécessitent pas forcément un identifiant de 23 caractères supplémentaires), l'appel se fait alors ainsi: Si ça peut aider.... |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com