Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2987 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  création fichier texte avec choix du dossier par l'utilisateur

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

création fichier texte avec choix du dossier par l'utilisateur

n°1327260
Yertle
Posté le 17-03-2006 à 11:33:29  profilanswer
 

Yop, voila le sujet :  
je suis en train de programmer une application web qui comprend des bases de données, et en fait j'ai un bouton qui éxécute un script qui va prendre chaque ligne d'un table en particulier dans la base et la copier dans un fichier texte. Jusque là pas de problème, seulement je voudrais juste que l'utilisateur choisisse le dossier d'enregistrement du fichier texte, et sans erreur.
 
Est-il possible en html ou meme php voire js d'ouvrir l'arborescence des dossier pour que l'utilisateur fasse son choix dedans ?
 
Merci d'avance.

mood
Publicité
Posté le 17-03-2006 à 11:33:29  profilanswer
 

n°1327266
dwogsi
Défaillance cérébrale...
Posté le 17-03-2006 à 11:39:49  profilanswer
 

Oui c'est tout à fait possible mais va falloir que tu liste le tout soit dynamiquement avec un script php ou alors manuellement.


Message édité par dwogsi le 17-03-2006 à 11:52:01
n°1327273
Yertle
Posté le 17-03-2006 à 11:42:20  profilanswer
 

Bah c'est mieux si c'est dynamique, mais comment je fais ?

n°1327285
dwogsi
Défaillance cérébrale...
Posté le 17-03-2006 à 11:51:51  profilanswer
 

opendir()
readdir()
is_dir()
etc...

n°1327286
durkheim
Posté le 17-03-2006 à 11:53:18  profilanswer
 

Alors, je suis pas sur de moi mais logiquement:
- le php est exécuté sur le serveur, donc il ne peut pas connaitre l'arborescnece du client.
- voir donc avec des scripts javascript.

n°1327289
Yertle
Posté le 17-03-2006 à 11:54:54  profilanswer
 

Exact Durkheim, jy avais pas pensé tiens...
Bon ben je vais poster dans la bonne catégorie, merci :)

n°1327290
dwogsi
Défaillance cérébrale...
Posté le 17-03-2006 à 11:55:31  profilanswer
 

durkheim a écrit :

Alors, je suis pas sur de moi mais logiquement:
- le php est exécuté sur le serveur, donc il ne peut pas connaitre l'arborescnece du client.
- voir donc avec des scripts javascript.


Tu as tout à fait raison, mais compte tenu du fait que nous sommes dans le forum PHP je part du principe qu'on fait ce que peut faire PHP.
 
Autrement dit je pensais à un enregistrement sur le serveur.
 
Ensuite si ce n'est pas ce qu'il souhaitait faire alors qu'il aille relir la doc!
 

Yertle a écrit :

Exact Durkheim, jy avais pas pensé tiens...
Bon ben je vais poster dans la bonne catégorie, merci :)


 
Et tu pouvais pas préciser que c'était du côté client???


Message édité par dwogsi le 17-03-2006 à 11:56:28
n°1327291
Yertle
Posté le 17-03-2006 à 11:57:44  profilanswer
 

J'ai pas besoin de post agressifs de gens non compréhensifs, mais merci qd même pour ton intérêt dwogsi.

n°1327491
gooopil
pfiew
Posté le 17-03-2006 à 17:28:13  profilanswer
 

Il me semble (confirmation ?) qu'un script JS ne peut pas accéder comme ça à l'arborescence de ton disque dur, ça me semblerait trop limite niveau sécu. Je me dirigerais plutôt vers une applet Java (même problème peut-être ?) ou un controle activeX qui lui pourra accéder aux ressources sytèmes du client...
Désolé c'est que des pistes j'ai jamais eu à faire de trucs comme ça, mais peut-être à explorer de ton côté...

n°1327537
smaragdus
whores, drugs & J.S. Bach
Posté le 17-03-2006 à 18:48:46  profilanswer
 

gooopil a écrit :

Il me semble (confirmation ?) qu'un script JS ne peut pas accéder comme ça à l'arborescence de ton disque dur, ça me semblerait trop limite niveau sécu. Je me dirigerais plutôt vers une applet Java (même problème peut-être ?)


en effet, encore heureux que le browser ne puisse pas faire n'importe quoi
 

Citation :

ou un controle activeX qui lui pourra accéder aux ressources sytèmes du client...


C'est possible si le controle est signé/authentifié (un truc de ce genre si je me souviens bien), et ça ne fonctionnera que dans MSIE

Citation :


Désolé c'est que des pistes j'ai jamais eu à faire de trucs comme ça, mais peut-être à explorer de ton côté...


 
La manière de procéder :  
Afficher un message "enregistrer le fichier" et envoyer le fichier en téléchargement. C'est tout simple

mood
Publicité
Posté le 17-03-2006 à 18:48:46  profilanswer
 

n°1327561
nargy
Posté le 17-03-2006 à 19:57:10  profilanswer
 

Code :
  1. header("Content-Type: application/octet-stream" );


 
devrai fonctionner avec les versions récentes des navigateurs.

n°1327565
nargy
Posté le 17-03-2006 à 20:09:27  profilanswer
 

sinon, avec un fichier .htacess dans le répertoire où se siyue le .txt, quelquechose comme:

Code :
  1. <Location fichier.txt>
  2. ForceType application/octet-stream
  3. </Location>


 
Mais c est plus joli de laisser PHP traiter la BDD à la volée:

Code :
  1. <Files fichier.txt>
  2.         SetHandler php
  3. </Files>


 
Forcera apache à considérer le fichier comme un script PHP. Ce script envoie un header application/octet-stream et extrait de la BDD ce qu il faut pour constituer le fichier texte. L  utilisateur se voit proposer de sauvegarder le ficher.txt, sans qu aucun fichier ne soit enregistré côté serveur.

n°1327572
gooopil
pfiew
Posté le 17-03-2006 à 20:25:57  profilanswer
 

smaragdus a écrit :


La manière de procéder :  
Afficher un message "enregistrer le fichier" et envoyer le fichier en téléchargement. C'est tout simple


 
Ah ben oui entièrement d'accord, j'avais juste l'impression qu'il voulait pas ça justement

n°1328835
Yertle
Posté le 20-03-2006 à 14:49:17  profilanswer
 

Merci pour votre attention et votre aide, j'ai trouvé une solution à mon problème.
J'explique :
mon application permet de générer un fichier texte résumant la base de données, et je voulais que l'utilisateur enregistre ce fichier dans le dossier qu'il aurait choisi, seulement je viens d'y penser, je ne peux pas générer un fichier sur le poste client, il sera généré uniquement sur le serveur, et donc l'utilisateur pourra le télécharger, il me suffit donc d'afficher un lien vers le fichier après sa génération.
 
C'est donc exactement ce que me disais Smaragdus, bien vu !
Voila voila...


Message édité par Yertle le 20-03-2006 à 14:50:16
n°1328851
nargy
Posté le 20-03-2006 à 15:17:11  profilanswer
 

> c est plus joli de laisser PHP traiter la BDD à la volée
ça évite surtout de créer des fichiers temporaires sur le serveur.

n°1328857
nargy
Posté le 20-03-2006 à 15:29:53  profilanswer
 

errata: c est pas sethandler mais encore forcetype pour le htaccess. un code qui fonctionne:
 
fichier ``test.txt``:

Code :
  1. <?
  2. header("Content-Type: application/octet-stream" );
  3. echo "hello".rand();
  4. ?>


 
fichier ``.htaccess``:

Code :
  1. <Files test.txt>
  2.   ForceType application/x-httpd-php
  3. </Files>


 
fichier ``telecharge.php``:

Code :
  1. <html><body>
  2. <a href="test.txt">Cliquez ici</a> pour télécharger au format texte.
  3. </body></html>



Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  création fichier texte avec choix du dossier par l'utilisateur

 

Sujets relatifs
texte en couleurs d'imageupload de fichier mais : SAFE MODE Restriction in effect.
[VBA] fichier d'aide compiléMot de passe sur dossier
Besoin d'aide pour lister contenu d'un dossierfichier swf
modification d' un fichier serveur par un poste client[Vtemplate] setvarf fichier interpretté
tester un ligne vide dans un fichierprob upload fichier dans popup
Plus de sujets relatifs à : création fichier texte avec choix du dossier par l'utilisateur


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR