Bonjour, voici mon problème.
J'ai sur une page le résultat d'une requête m'affichant au fur et à mesure des lignes.
Je souhaiterais pouvoir exporter l'ensemble des lignes dans un fichier excel (csv).
Le problème, c'est que je ne sais pas où placer le code permettant l'export.
Si je place le bouton Export après le "While" de ma requête, ça ne m'exporte que la dernière ligne.
Si je place le code dans le "while", ca me crée autant de boutons Export qu'il n'y a de lignes, et chaque bouton ne peut donc exporter qu'une ligne.
Voici le bout de code de la page requête :
Je suis bloqué depuis un bon moment sans trouver d'issue..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 $exe_req_prod_id = mysql_query($req_prod_id) or die(mysql_error()); while($res_prod_id = mysql_fetch_array($exe_req_prod_id)){ $formation = $res_prod_id['product_sku']; echo '<tr class="liste">'; echo"<td>".$date."</td><td>".$formation."</td><td>".$theme."</td><td>".$prix."</td><td>".$repas."</td><td>".$nom."</td><td>".$prenom."</td>"; echo "</tr>"; } echo "<a href=\"test.php?titre=".$titre."&nom=".$nom."&prenom=".$prenom."&adresse1=".$adresse1."&adresse2=".$adresse2."&code_postal=".$code_postal."&ville=".$ville."&tel=".$tel."&fax=".$fax."&email=".$email."&theme=".$theme."&formation=".$formation."&prix=".$prix."&repas=".$repas."\"><input type=\"submit\" value=\"Exporter\"></a>"; } ?> Page test.php = page sur laquelle renvoie le bouton Exporter $fichier = new FichierExcel(); $fichier->Colonne("Titre;Nom;Prenom;Adresse1;Adresse2"...) $fichier->Insertion("'".$titre."';'".$nom."';'".$prenom."'....) */ $fichier->output('NomFichier'); Page Création Fichier Excel class FichierExcel { private $csv = Null; function Insertion($file){ $this->csv.=$file."\n"; return $this->csv; } function output($NomFichier){ header("Content-type: application/vnd.ms-excel"); header("Content-disposition: attachment; filename=$NomFichier.csv"); header("Content-type: NAMES 'utf8'"); print $this->csv; exit; } }?>
j'ai bien pensé à placer le début de ma page test dans ma boucle "while"
mais ca ne fonctionne pas.
Merci d'avance de votre aide...
Partager