Pbavec file_exist

Résolu
cs_richardd Messages postés 35 Date d'inscription mercredi 26 mars 2003 Statut Membre Dernière intervention 10 mai 2005 - 22 avril 2005 à 00:19
JoJo738 Messages postés 1267 Date d'inscription mercredi 7 juillet 2004 Statut Membre Dernière intervention 29 juin 2010 - 22 avril 2005 à 18:28
Salut,


A partir d'un formulaire, j'utilise un input type file.


Quand je valide le formulaire, l'envoi du nom du fichier avec son chemin est
correct (C:\temp\monfichier.txt), par contre le script répond toujours que le
fichier n'existe pas (fonction file_exists).


D'où pourrai provenir le problème ? J'ai fais des essais en n'utilisant aucune
majuscule, mais rien ni fait.


Merci

12 réponses

JoJo738 Messages postés 1267 Date d'inscription mercredi 7 juillet 2004 Statut Membre Dernière intervention 29 juin 2010 2
22 avril 2005 à 18:28
Si ca marche merci d'accepter la/les reponse(s) qui t'on permis de resoudre ton probleme

<hr style="width: 100%; height: 2px;">Si ma reponse te convient, merci de l'accepter !
3
enset Messages postés 12 Date d'inscription mardi 29 mars 2005 Statut Membre Dernière intervention 8 mai 2005
22 avril 2005 à 00:40
salut camarade moi aussi je suis debutant
mais je croi que il faut que tu enregistre le fichier txt dans le meme repertoire que le php cad dans le dossier www si tu utilise easyphp et le chemin devien (monfichier.txt) tout cour
bonne chance
0
JoJo738 Messages postés 1267 Date d'inscription mercredi 7 juillet 2004 Statut Membre Dernière intervention 29 juin 2010 2
22 avril 2005 à 01:50
Bonjour,

Euh je ne crois pas que tu puisse en passant pas C:\ ( je n'en suis pas sûr )

Essaye directement avec file_exists('./fichier.txt'); ou avec une adresse direct du serveur



Et oui enset tu as raison, il faut que ce soit dans www/ pour EasyPhp ( donc on ne peut pas avec C:\ )

<hr style="width: 100%; height: 2px;">Si ma reponse te convient, merci de l'accepter !
0
cs_richardd Messages postés 35 Date d'inscription mercredi 26 mars 2003 Statut Membre Dernière intervention 10 mai 2005
22 avril 2005 à 09:58
Salut,


En local sur mon pc avec easyphp, ça fonctionne. Par contre c'est avec le site
en ligneque ça coince.


Pour moi (ce que j'en avait compris), le file_exist permet de faire un test
d'existence, avant justement de l'enregistrer ou du l'utiliser, et celà à partir de
son emplacement d'origine (pc de l'internaute).


Je vais chercher le moyen de faire une copie du fichier sur un répertoire du site.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
arnal69130 Messages postés 445 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 22 mars 2007 2
22 avril 2005 à 10:28
Je ne sais pas si j'ai bien compris, mais je te précise que le script php est exéctué sur le serveur et qu'il ne peut pas parcourir le poste du client... Tu imagine si n'importe quel site sur lequel tu passes pouvait parcourir ton pc ?

Arn;o)
0
cs_richardd Messages postés 35 Date d'inscription mercredi 26 mars 2003 Statut Membre Dernière intervention 10 mai 2005
22 avril 2005 à 11:03
On est d'accord.

Mais le but de l'input de type text, est bien la pour te permettre de sélectionner
un fichier de ton disque dur via un formulaire pour un traitement ensuite par le
script (exemple d'une cvthèque, à partir de laquelle tu transmet ton fichier à un
format quelconque sur le site).

Donc pour moi la procédure est :
- formulaire de sélection du fichier
- transmission des info au script par methode post du formulaire.
- avant tout traitement (entre autre enregistrement du fichier) il faut bien vérifier
que ce fichier existe (sur le pc de l'internaute).
- traitement du fichier.

Dans mon cas ce que je veux faire, c'est la mise à jour d'une base de données
à partir d'information provenant d'un fichier texte (mise à jour de plusieurs infos
d'un coup). Avec un formulaire j'indique le fichier à utiliser sur mon pc, et
ensuite le script doit l'ouvrir pour insérer les infos en base.
0
JoJo738 Messages postés 1267 Date d'inscription mercredi 7 juillet 2004 Statut Membre Dernière intervention 29 juin 2010 2
22 avril 2005 à 11:35
Ah ... Alors la file_exists() ne peut fonctionner.

Il suffit d'utiliser le $_FILES['nom']['error'] et des conditions pour savoir si le fichier est vide ( vide ou inexistant)

<hr style="width: 100%; height: 2px;">Si ma reponse te convient, merci de l'accepter !
0
JoJo738 Messages postés 1267 Date d'inscription mercredi 7 juillet 2004 Statut Membre Dernière intervention 29 juin 2010 2
22 avril 2005 à 11:38
Mais le but de l'input de type text, est bien la pour te permettre de sélectionner

> Euh, input type file. Ce n'est pas la emem chose (^_^)
<hr style="width: 100%; height: 2px;">Si ma reponse te convient, merci de l'accepter !
0
cs_richardd Messages postés 35 Date d'inscription mercredi 26 mars 2003 Statut Membre Dernière intervention 10 mai 2005
22 avril 2005 à 14:54
Désolé de n'avoir put répondre plus tôt, mais pleins de soucis de connexion
internet, mais apparemment ça remarche.

Effectivement je me suis trompé, j'utilise bien un input type FILE (et non pas
text) pour sélectionner le fichier.

Donc si file_exist ne fonctionne pas, le fopen ne fonctionnera pas mieux alors ?
Comment je peut faire pour le lire ce fichier ?
0
JoJo738 Messages postés 1267 Date d'inscription mercredi 7 juillet 2004 Statut Membre Dernière intervention 29 juin 2010 2
22 avril 2005 à 15:03
Pourquoi fopen ??

Tu as copy et une autre move_uploaded_file.

Sinon fais print_r($_FILES); et tu auras tout ce que contient $_FILES dont<tt> $_FILES['userfile']['error']</tt> qui contient une erreur qui te permetra de savoir si ton fichier n'est pas vide ( donc existe )


<hr style="width: 100%; height: 2px;">Si ma reponse te convient, merci de l'accepter !
0
cs_richardd Messages postés 35 Date d'inscription mercredi 26 mars 2003 Statut Membre Dernière intervention 10 mai 2005
22 avril 2005 à 16:09
fopen pour lire le contenu du fichier.

Les tests d'upload du fichier fonctionne, reste plus qu'à le lire
0
cs_richardd Messages postés 35 Date d'inscription mercredi 26 mars 2003 Statut Membre Dernière intervention 10 mai 2005
22 avril 2005 à 16:15
Ca marche, merci de votre aide.

Richard
0
Rejoignez-nous