|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : avril 2005 Messages : 37 ![]() |
Bonjour,
Lorsque je "scanne" un répertoire à la recherche de l'ensemble des fichiers présents, certains fichiers ne sont pas reconnu comme tel par la fonction is_file(). Les fichiers .php sont reconnus comme étant des fichiers, par contre les fichiers .exe ne le sont pas. Le répertoire scanné est sous Windows "C:\Program Files\EasyPHP1-8\www\marketing\uploaded_files\". Je ne comprends pas pourquoi ? Cela provient-il des droits des fichiers ? Y'a-t-il une limitation sur les extensions ? Y'a-t-il d'autres causes possibles ? D'avance merci de votre aide. Alex. |
|
|
00
|
|
|
#2 | |
|
Membre émérite
![]() Inscription : août 2006 Messages : 943 ![]() |
Heuuuu je ne suis pas sur qu'un .exe soit un File...
Tout comme un .zip, d'ailleur.... Ou tout autre chose qui n'est pas un "fichier texte"... Voilà ce que dit la doc : Citation:
__________________
Veni Vidi Vici ------------------------- Mes articles : developpez.com ou bien vbview.net ------------------------- Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!! Et aussi : --> pear_manual_fr.chm!!! Ou encore : --> Les tutoriaux & cours PHP de Développez.com ------------------------- |
|
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : avril 2005 Messages : 37 ![]() |
Merci pour la réponse, cela voudrait dire que je ne peux pas faire de manipulation sur des fichiers autres que des fichiers textes ??? Si je permets l'upload d'un fichier Excel par exemple, lorsque j'affiche la liste des fichiers du répertoire, je ne verrai pas mon fichier Excel. (car le problème se pose aussi avec les fichiers Excel...)
Dans ce cas, quelle fonction dois-je utiliser pour différencier mes sous-dossier de mes fichiers ? Merci. |
|
|
00
|
|
|
#4 |
|
Membre émérite
![]() Inscription : août 2006 Messages : 943 ![]() |
Et bien si, un fichier Excell comme un .doc, d'ailleurs, sont considiérés comme des fichiers....
Il faut que tu fasses la différence entre une application (.EXE : code compilé) et un fichier, qui est généralement la résultante d'"un traitement par application : Une image est un fichier, ainsi que du Excell, du Word, du Open Office, etc.... PS : un fichier Excell est en .XLS, et pas en .EXE !!!! PPS : pour déterminer le type réelle d'un fichier, il faudrait que tu vérifie les MIME type de ceux ci
__________________
Veni Vidi Vici ------------------------- Mes articles : developpez.com ou bien vbview.net ------------------------- Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!! Et aussi : --> pear_manual_fr.chm!!! Ou encore : --> Les tutoriaux & cours PHP de Développez.com ------------------------- |
|
|
00
|
|
|
#5 | ||||
|
Invité régulier
![]() Inscription : avril 2005 Messages : 37 ![]() |
Désolé mais je me suis mal exprimé toute à l'heure. Je voulais ajouter suite à ta remarque qu'en plus des fichiers .exe, mes fichiers .xls ne sont pas plus reconnu. (alors même que comme tu l'indiques, il le devrait puisque considéré comme des fichiers 'textes'). Le problème se pose avec beaucoup d'autres types de fichiers, et même des fichiers textes (.txt) !!!
La fonction is_file ne considère pas ces fichiers Excel ou Textes comme étant des fichiers... Ou alors le problème vient d'ailleurs. J'avais pensé à un problème de droits, vu que je déplaçais les fichiers via l'explorateur dans un premier temps afin de tester la boucle qui permettait de faire l'affichage. Mais le problème se présente également si je fais un upload par le "code" (avec la fonction move_uploaded_file). Le répertoire contient des fichiers .php, .inc, .txt, .exe, .xls et lorsque j'affiche le contenu, seuls certains des fichiers .php "sortent". Voici la fonction qui permet de "scanner" le répertoire. Code :
Cette fonction me constitue un tableau avec l'ensemble des fichiers du répertoire, ainsi que les attributs choisis. Ensuite j'affiche le tout dans une table en faisant une boucle sur les élements de ce tableau (pour info, f_affiche_un fichier ecrit une ligne <tr><td>....</tr></td>) Code :
Merci. |
||||
|
|
00
|
|
|
#6 | ||
|
Membre émérite
![]() Inscription : août 2006 Messages : 943 ![]() |
Essaye ca pour voir :
Code :
Essaye ca, puis sans la condition pour voir (sans le is_file) Dis moi ce que ca fait
__________________
Veni Vidi Vici ------------------------- Mes articles : developpez.com ou bien vbview.net ------------------------- Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!! Et aussi : --> pear_manual_fr.chm!!! Ou encore : --> Les tutoriaux & cours PHP de Développez.com ------------------------- |
||
|
|
00
|
|
|
#7 |
|
Invité régulier
![]() Inscription : avril 2005 Messages : 37 ![]() |
Je t'ai mis en pièces jointes des copies d'écrans du contenu du dossier, du résultat affiché avec le is_file et le resultat sans le is_file (2 copies d'écran)
Merci. |
|
|
00
|
|
|
#8 |
|
Membre émérite
![]() Inscription : août 2006 Messages : 943 ![]() |
Hum....
C'est bizarre, effectivement sans le is_file tu as ce que tu veux, mais sans les stats de documents..... Peut-être un PB lorsque tu as bougé les fichiers lors de l'Upload ? Parce que is_file est quand même sensé marché, et en plus là il arrive pas à lire les stats de fichier.... Regarde ca, si tu ne l'a déjà fait : http://fr.php.net/manual/fr/features.file-upload.php
__________________
Veni Vidi Vici ------------------------- Mes articles : developpez.com ou bien vbview.net ------------------------- Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!! Et aussi : --> pear_manual_fr.chm!!! Ou encore : --> Les tutoriaux & cours PHP de Développez.com ------------------------- |
|
|
00
|
|
|
#9 |
|
Invité régulier
![]() Inscription : avril 2005 Messages : 37 ![]() |
Ca y est, j'ai trouvé la cause du problème
.... en parcourant les différents post du lien que tu m'as donné, j'ai fini par ne plus que rechercher la cause de l'erreur provoquée lors de la recherche des stats...et là je me suis rendu compte que je ne donné pas le chemin complet du fichier, mais juste le nom du fichier...J'ai modifié, et mis le chemin complet (localisation + nom du fichier) et là cela fonctionne parfaitement... J'ai également compris pourquoi cela marchait tout de même pour certain fichier... En fait, ces fichiers là étaient présent dans le répertoire d'exécution de ma page (en fait j'avais testé l'upload sur certain fichiers .php de mon site....)... Merci pour votre aide. A+ |
|
|
00
|
|
|
#10 |
|
Membre émérite
![]() Inscription : août 2006 Messages : 943 ![]() |
De rien, c'est cool que le PB soit résolu en plus par toi-même : c'est très formateur.
N'oublie pas la doc donc, qui comme tu l'as vu est très complète, Et merci pour l'info, ca permettra à d'autre de ne pas se planter Bonne chance pour la suite
__________________
Veni Vidi Vici ------------------------- Mes articles : developpez.com ou bien vbview.net ------------------------- Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!! Et aussi : --> pear_manual_fr.chm!!! Ou encore : --> Les tutoriaux & cours PHP de Développez.com ------------------------- |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com