Bonjour,

J'ai créé un script pour un export Excel

Code php : 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
 
 
<?php
// output headers so that the file is downloaded rather than displayed
header('Content-Type: text/csv; charset=utf-8');
header('Content-Disposition: attachment; filename=Materiel.csv');
 
// create a file pointer connected to the output stream
$output = fopen('php://output', 'w');
 
// output the column headings
fputcsv($output, array('Marque', 'Numero de serie', 'Modèle', 'Type' , 'identifiant','OS','Prenom','Nom','Salle','IP','Reservable','Commentaire','designation','Date d achat','Numero de commande','imputation','numero EMN','Adresse Mac', 'Numero SAV' ));
 
// fetch the data
mysql_connect('localhost', 'root', 'root');
mysql_select_db('test');
$rows = mysql_query('
SELECT ouapi_ha_marque.libelle, num_serie, ouapi_ha_modele.libelle, ouapi_ha_type.libelle, ouapi_hardware.nom, 
ouapi_ha_os.libelle, ouapi_utilisateur.prenom, ouapi_utilisateur.nom, ouapi_emplacement.libelle, ouapi_hardware.ip, 
ouapi_hardware.reservable, ouapi_hardware.commentaire, ouapi_hardware.pfield_dsignation, ouapi_hardware.pfield_datedachat, 
ouapi_hardware.pfield_ncommande, ouapi_hardware.pfield_imputation, ouapi_hardware.pfield_numemn, ouapi_hardware.pfield_adressemac, ouapi_hardware.pfield_numsav
FROM ouapi_hardware
LEFT JOIN ouapi_ha_marque ON ouapi_ha_marque.id = ouapi_hardware.marque_id
LEFT JOIN ouapi_ha_modele ON ouapi_ha_modele.id = ouapi_hardware.modele_id
LEFT JOIN ouapi_ha_type ON ouapi_ha_type.id = ouapi_hardware.type_id
LEFT JOIN ouapi_ha_os ON ouapi_ha_os.id = ouapi_hardware.os_id
LEFT JOIN ouapi_utilisateur ON ouapi_utilisateur.id = ouapi_hardware.user_id
LEFT JOIN ouapi_emplacement ON ouapi_emplacement.id = ouapi_hardware.emplacement_id

');
 
// loop over the rows, outputting them
while ($row = mysql_fetch_assoc($rows)) fputcsv($output, $row);
?>

Ma requête est correcte, elle me renvoie tous les résultats désirés (testé sur phpmyadmin).

Mais mon fichier généré est incorrect , il me manque des colonnes de résultats et donc tout est décalé.

Mais si j'exporte le résultat de ma requête en format excel via phpmyadmin, tout est correct.

Oui je sais. Pourquoi ce prendre la tête . Autant le faire directement sur phpmyadmin. Mais mon client veut un simple bouton "exporter".

Plusieurs cliques, c'est compliqué vous comprenez.

Voici ma question : Comment faire pour prendre en compte c'est tuples vides ?

Peut-être en image sa parle mieux :

Ma version : Version phpmyadmin :

Résultat de ma requête sql :