Export CSV particulier URGENT HELP!!!

Résolu
Signaler
Messages postés
2
Date d'inscription
mardi 6 janvier 2009
Statut
Membre
Dernière intervention
6 janvier 2009
-
Messages postés
1423
Date d'inscription
mardi 14 décembre 2004
Statut
Membre
Dernière intervention
29 décembre 2012
-
Bonjour à tous
je requiert votre aide pour un souci sur lequel j'ai buté toute la journée. voilà, pour ma boite, j'ai créé une interface qui me permet de rentrer les résultats de tests que j'effectue auprès de divers collectifs. Les résultats de ces tests sont stockés dans une base de donnée. Chaque test à sa propre table, et chaque test est différent donc comporte un nombre de question différent.
Lorsque j'ai fini de remplir mes test, je veux récupérer mes données dans un fichier CSV pour les exploiter plustard sous excell.

je veux donc, en fonction du numéro de test demandé via un formulaire, récupérer le fichier csv. Cependant dans le code que j'ai écris je n'arrive pas à récupérer le csv en fonction du test demandé. Mon principal problème c'est le nombre variable de colonne d'un test à l'autre...
Pouvez vous m'aider??? MErci d'avance à tous!

Je pense que j'ai une erreur de logique quelque part, notamment au niveau de la boucle, mais je ne sais pas quoi faire pour le résoudre.
le code:
<?php
session_start();
require ("config.inc.php");
$connection = mysql_connect($server,$user,$pass);
mysql_select_db($base,$connection);

$test = $_POST['test'];// je récupère le numero de test posté via un formulaire

$sql2="SELECT DISTINCT Question.num FROM Question WHERE Question.test='$test' ORDER BY Question.num";
$resultat2=mysql_query($sql2);

$csv_output = "nom;type;niv1;";

$i=0;

While($data=mysql_fetch_array($resultat2)){
$i=$i+1;
$nom_colonne="R".$data[num];  // en fonction du nombre de question du test demandé, je veux rentrer le nombre de colonne de réponse correspondant dans mon fichier csv.

$csv_output =$nom_colonne.";";
}
$csv_output .= "\n";

$sql3 = "SELECT *  FROM Rep".$test;
$resultat3= mysql_query($sql3)
or die('Erreur SQL !
' . $query . '
' . mysql_error());

//Boucle sur les resultats
while($row = mysql_fetch_array($resultat3)) {

$csv_output.="$row[nom];$row[type];$row[niv1];";
$j=0;
While($data2=mysql_fetch_array($resultat2)){
$j=$j+1;
$nom_colonne1=$data2[num];
$csv_output.="$row[$nom_colonne1];";
}
$csv_output .= "\n";
}
mysql_free_result($resultat2);
header("Content-type: application/vnd.ms-excel");
header("Content-disposition: attachment; filename='repTest-'.$test.'-'.date('YmdHis').'.csv');
print $csv_output;
exit;
?>

3 réponses

Messages postés
1423
Date d'inscription
mardi 14 décembre 2004
Statut
Membre
Dernière intervention
29 décembre 2012
4
indente déjà

Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

 Les geeks n'ont pas une case en moins ils commencent juste à compter à partir de zéro
Messages postés
2
Date d'inscription
mardi 6 janvier 2009
Statut
Membre
Dernière intervention
6 janvier 2009

Mais encore...?
Messages postés
1423
Date d'inscription
mardi 14 décembre 2004
Statut
Membre
Dernière intervention
29 décembre 2012
4
Exemple d'indentation...
http://www.gaboly.com/VBA/Indentation.html

Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

Les geeks n'ont pas une case en moins ils commencent juste à compter à partir de zéro