Page 1 sur 1

Récuperer un fichier CSV

Posté : 27 juin 2010, 16:23
par martial
Bonjour à tous
Je sauvegarde le contenu d'une table MYSQL avec la commande SELECT...INTO OUFILE, cela fonctionne parfaitement et est trés rapide. En revanche, le fichier va se sauvegarder dans le repertoire de mysql. Existe-t-il un moyen pour que le client récupére automatiquement ce fichier crée par l'intermédiaire du navigateur, j'ai essayé cette fonction mais le fichier est toujours enregistré sous le repertoire MYSQL et le fichier proposé au client est vide
Voici le script :
 include ("db.php");
header('Content-Type: application/csv');
header('Content-Disposition: attachment; filename=' . $_SESSION["id_fich"] .'.csv');
$sExport = @$_GET["export"]; 
if ($sExport == "csv") {
	Exportcsv("csv", $sSql);
	mysql_db_close($conn);
	exit;
                                }
//requête
$conn = mysql_db_connect(HOST, USER, PASS, DB, PORT);
$sSql = "SELECT  * FROM `fichier`  INTO OUTFILE '".$_SESSION[ "id_fic"].".csv' FIELDS TERMINATED BY ';' OPTIONALLY ENCLOSED BY '\"'";


function Exportcsv($sExport, $sSql)
{
$result1 = mysql_query($sSql) or die('Erreur SQL !'.$sSql.'<br />'.mysql_error());
}
Merci pour votre aide

Re: Récuperer un fichier CSV

Posté : 27 juin 2010, 17:55
par stopher
Slt ,

Une fois l'export terminé , il te suffit de lire le fichier , en forçant le téléchargement et non l'affichage .
...
header("Content-Type: application/force-download");
header('Content-Disposition: attachment; filename="export.csv"');
header('Content-Length: '.  filesize('chemin/vers/export.csv'));
readfile('chemin/vers/export.csv');
...

Good luck ,
Ch.

Re: Récuperer un fichier CSV

Posté : 28 juin 2010, 19:01
par martial
Merchi gars pour ton aide...ça marche !!! :)

Re: Récuperer un fichier CSV

Posté : 28 juin 2010, 20:57
par stopher
Merchi gars pour ton aide...ça marche !!! :)

De rien mec :wink:

Ch.