Sauver le résultat d'une requête dans un fichier txt ???

Melisback Messages postés 2 Date d'inscription lundi 17 mars 2003 Statut Membre Dernière intervention 17 mars 2003 - 17 mars 2003 à 18:55
chkerin Messages postés 13 Date d'inscription jeudi 21 octobre 2004 Statut Membre Dernière intervention 3 mai 2005 - 3 mai 2005 à 13:47
Bonjour,

Surement une question simple, mais j'ai quelques petites difficultés.

Je voudrais bien sauver le résultat d'une requête MySql effectuée par un utilisateur sous forme de fichier Txt.
Ce fichier servira chaque fois de base à un publipostage.

Je souhaiterais lui proposer le lien vers le document après la requête et que le document soit détruit lorsque la session est clôturée.

Une petite aide svp.
Merci

Mel is back

6 réponses

willowman Messages postés 143 Date d'inscription vendredi 5 juillet 2002 Statut Membre Dernière intervention 18 mars 2006 1
17 mars 2003 à 19:17
Salut !

Tu bosses sous windows ou linux ?
Tu recherches quel type d'aide ?
De la mise en oeuvre(genre algo), ou du codage (genre code source)?
Pour realiser ta manip voici quelques elements d'aide !

- indexer temporairement dans un dossier, les requetes effectues par le client, par un fichier que tu nommeras a l'aide de la valeur de session. (fichier unique donc)

- creer ton lien immediatement apres, en ayant effectue un tri de la requete histoire de bien la mettre en forme !

Et puis, si le client initie une fermeture de session (via un bouton quitter ou autre), ou qu'il quitte le site, tu vires fichier temporaire.

Si tu desires un coup de main, n'hesite pas !

Allez, a pluche ;-)
0
Melisback Messages postés 2 Date d'inscription lundi 17 mars 2003 Statut Membre Dernière intervention 17 mars 2003
17 mars 2003 à 21:37
Yo,

Déjà merci pour ta réponse, mais je vais expliciter mon problème.
Config : W2000, Apache & MySql

J'ai une db avec les données deplusieurs milliers de sociétés.
Le secrétaraiat fait des requêtes en intranet suivnt toutes sortes de (multi)critères ( cp, statut, commission paritaire, code nace ... ).
Jusque là, tout est correct.
Les résultats s'affichent via explorateur web.
Ce que je voudrait, c'est qu'ils puissent sauver les résultats de leurs requêtes dans un fichier ( txt, xls, xml ), peu importe.
Pour que par la suite, ils puissent faire un publipostage avec un document word sur base des résultats de la requête.

En coldfusion, pas de problème dans aucun des formats, mais en php, c'est pas vraiment ma tasse de thé ;-)

That's all.

Une petite aide serait bienvenue.
Merci

Mel is back
0
willowman Messages postés 143 Date d'inscription vendredi 5 juillet 2002 Statut Membre Dernière intervention 18 mars 2006 1
18 mars 2003 à 01:44
Ok !

Je vois mieux maintenant...

Alors, tu as plusieurs alternatives pour arriver a tes fins !

- Soit tu enregistres le resultat dans un fichier .txt et l'exploite ensuite pour le publipostage.

- Soit tu passes par un fichier XML, ce qui est deja beaucoup mieux, puisque plus portable...(extension avec DTD ou XSchema...)

- Enfin, tu peux carrement l'enregistrer (le resultat) dans un fichier Excel tout simplement, et l'utiliser pour le publispotage par la suite (ce qui est encore plus evident a faire pour les personnes 'non-informaticienne' de base, et plus 'orientee' secretariat ou comptabilite.
(Je parle en connaissance de cause :-))

Donc voila.

Ce que tu dois decider dans un premier temps :

- quel format tu vas prendre ?
- quel tete doit avoir ton fichier (en fonction du format choisi)
(champs en colonnes ? en ligne ? ect...)
- preparer ton arborescence (rep, fichiers) et le nommage a utiliser (creation, suppression, nom fichier session ect..)
- enfin, creer la petite boucle qui fera le miracle...

Voici un petit bout de code pour sauvegarder dans un fichier :
structure de la table : matable(champs1, champs2)

//---------------------------------

$resultat=mysql_query("SELECT * FROM matable")
or die("Requete impossible : " . mysql_error());

$fp = fopen("fichier.txt","w");

while($line = mysql_fetch_array($resultat)){
$entree = $line['champs1'] . " : " . $line['champs2'];
fputs($fp,$entree . "\n");
}

fclose($fp);

//---------------------------------

Quand tout est fini tu fais un shell_exec("commande de suppression de fichier de ton os (del ou rm ou autres)";

Allez, a pluche ;-))
0
chkerin Messages postés 13 Date d'inscription jeudi 21 octobre 2004 Statut Membre Dernière intervention 3 mai 2005
3 mai 2005 à 10:46
Bonjour,



je sais que ca fait super longtemps mais je tente le coup quand meme.



J'ai besoin d'enregistrer le resultat d'une requete dans un fichier
Excel, est ce que c'est la meme demarche que pour un fichier texte??



Merci
0

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

Posez votre question
willowman Messages postés 143 Date d'inscription vendredi 5 juillet 2002 Statut Membre Dernière intervention 18 mars 2006 1
3 mai 2005 à 12:25
Salut a toi Chkerin !



Comme quoi, tu as eu raison de tenter le coup !

La demarche est sensiblement la meme, sauf que pour creer un fichier au
format EXCEL, tu vas devoir faire appel a un package spéficique :
PHP_WRITEEXCEL



http://freshmeat.net/projects/php_writeexcel/



Tu trouveras ton bonheur !!



A+



Anli.
0
chkerin Messages postés 13 Date d'inscription jeudi 21 octobre 2004 Statut Membre Dernière intervention 3 mai 2005
3 mai 2005 à 13:47
Merci d'avoir répondu aussi vite...

Je teste tout de suite
0
Rejoignez-nous