Besoin d'aide ...

Petit nouveau ! | 1 Messages

19 juin 2013, 10:51

Bonjour je viens vers vous pour avoir vos lumières ... j'ai développé quelques outils web en php pour accéder aux résultats de certaines requêtes oracle mais j'aurai aimer aller plus loin dans une démarche bien précise ...



Je voudrais exécuter une requête oracle sous un script php
Que lorsque j'envoi le traitement de la requête cela m'ouvre la fenêtre Windows "enregistrer Sous" afin d'enregistrer le résultat de ma requête sous un fichier TXT, et que je puisse lui donner le nom que je souhaite ....
si quelqu'un a une idée ... J'ai essayé plusieurs choses mais je bloque un peu ... #-o

Je tiens à préciser que cela sera mis à disposition d'un utilisateur lambda donc non initié d'où l'intérêt de la page Web.

Merci de votre aide.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

19 juin 2013, 18:58

salut,

il faut que mette le retour de ta requête dans une variable (et tu format le tout au passage).

Une fois fait tu utilise la fonction header pour envoyer au navigateur (exemple dans la doc).


@+
Il en faut peu pour être heureux ......

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

19 juin 2013, 20:04

Salut, il faut utiliser un header() pour orienter l'affichage vers un fichier à télécharger par l'utilisateur. Comme dans cet exemple:
<?php
#servir des données sous format texte CSV à télécharger

#entête http pour commuter l'affichage en mode texte avec téléchargement du contenu dans un fichier texte
header('Content-Type: text/plain');
header('Content-Disposition: attachment; filename="personnes.txt";');

#requete et affichage des donnees
mysql_select_db('test', mysql_connect('localhost','root'));
$req = mysql_query('SELECT * FROM personnes');
while ($req && $row=mysql_fetch_row($req))
{
	echo implode(';',$row)."\r\n"; //écrire une ligne de données sous format CSV (séparateur ; )
}
?>
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène