Exportation mysql vers excel
yoann72
-
giheller Messages postés 1882 Date d'inscription Statut Membre Dernière intervention -
giheller Messages postés 1882 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai un petit souci je veux, avec php, exporter le résultat d'une requête dans un tableau excel, le problème c'est que je n'ai rien qui s'affiche à par les noms de colonnes que je lui est demandé de mettre. Ma requête fonctionne très bien quand je la teste donc si quelqu'un à une idée j'en serait vraiment ravi.
Merci
j'ai un petit souci je veux, avec php, exporter le résultat d'une requête dans un tableau excel, le problème c'est que je n'ai rien qui s'affiche à par les noms de colonnes que je lui est demandé de mettre. Ma requête fonctionne très bien quand je la teste donc si quelqu'un à une idée j'en serait vraiment ravi.
Merci
A voir également:
- Exportation mysql vers excel
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
- Excel moyenne - Guide
12 réponses
bonjour,
le retour de la requête dans $data dit que le nom est dans realname il faut donc
coder
$tbl = $tbl . "<td>" . $data['realname'] . "</td>";
le retour de la requête dans $data dit que le nom est dans realname il faut donc
coder
$tbl = $tbl . "<td>" . $data['realname'] . "</td>";
Bonjour,
si le problème n'est pas au niveau de la requête, il doit être au niveau de l'afficahge.
si le problème n'est pas au niveau de la requête, il doit être au niveau de l'afficahge.
C'est je que je pense aussi.
Je met le code car ma je vois pas de trop !
Je met le code car ma je vois pas de trop !
<?php header("Content-type: application/vnd.ms-excel"); header("Content-Disposition: attachment; filename=nom_fichier.txt"); /*// selectionner la base de données $host = localhost;//la_machine $user = root;//votre_login $bdd = glpi;//Nom_de_la_base_de_donnees $passwd = passe;*/ // Connexion au serveur $connect=mysql_connect("localhost","root","passe") or die("erreur de connexion au serveur"); $db=mysql_select_db("glpi", $connect) or die("erreur de connexion a la base de donnees"); //Requête SQL $sql = "select glpi_users.realname, glpi_users.firstname, glpi_dropdown_tracking_category.completename, glpi_tracking.realtime FROM glpi.glpi_dropdown_tracking_category, glpi.glpi_tracking,glpi.glpi_users where glpi_dropdown_tracking_category.id=glpi.glpi_tracking.category and glpi.glpi_tracking.assign = glpi_users.id Order by glpi_users.name, glpi_dropdown_tracking_category.completename"; $tbl= " <table border='0' cellpadding='0' cellspacing='0'> <tr bgcolor='#CCCCCC' height='40px'> <td>Nom de l'utilisateur</td> <td>Prénom de l'utilisateur</td> <td>Catégorie</td> <td>Temps passé dessus</td> </tr>"; while ($data = mysql_fetch_array($sql)) { $tbl = $tbl . "<tr>"; $tbl = $tbl . "<td>" . $data["Nom de l'utilisateur"] . "</td>"; $tbl = $tbl . "<td>" . $data["Prénom de l'utilisateur"] . "</td>"; $tbl = $tbl . "<td>" . $data["Catégorie"] . "</td>"; $tbl = $tbl . "<td>" . $data["Temps passé dessus"] . "</td>"; $tbl = $tbl . "</tr>"; } $tbl = $tbl . "</table>"; print $tbl ; mysql_close($connect) ?>
bonjour(re)
j'airai fait un truc du genre :
$sql = "select glpi_users.realname, glpi_users.firstname, glpi_dropdown_tracking_category.completename, glpi_tracking.realtime
FROM glpi.glpi_dropdown_tracking_category, glpi.glpi_tracking,glpi.glpi_users
where glpi_dropdown_tracking_category.id=glpi.glpi_tracking.category
and glpi.glpi_tracking.assign = glpi_users.id
Order by glpi_users.name, glpi_dropdown_tracking_category.completename";
$result = mysql_query($sql);
$tbl= " <table border='0' cellpadding='0' cellspacing='0'>
<tr bgcolor='#CCCCCC' height='40px'>
<td>Nom de l'utilisateur</td>
<td>Prénom de l'utilisateur</td>
<td>Catégorie</td>
<td>Temps passé dessus</td>
</tr>";
while ($data = mysql_fetch_array($result))
j'airai fait un truc du genre :
$sql = "select glpi_users.realname, glpi_users.firstname, glpi_dropdown_tracking_category.completename, glpi_tracking.realtime
FROM glpi.glpi_dropdown_tracking_category, glpi.glpi_tracking,glpi.glpi_users
where glpi_dropdown_tracking_category.id=glpi.glpi_tracking.category
and glpi.glpi_tracking.assign = glpi_users.id
Order by glpi_users.name, glpi_dropdown_tracking_category.completename";
$result = mysql_query($sql);
$tbl= " <table border='0' cellpadding='0' cellspacing='0'>
<tr bgcolor='#CCCCCC' height='40px'>
<td>Nom de l'utilisateur</td>
<td>Prénom de l'utilisateur</td>
<td>Catégorie</td>
<td>Temps passé dessus</td>
</tr>";
while ($data = mysql_fetch_array($result))
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
alors il faut tracer et voit avant affichage ce que renvoit la requête.
echo "<pre>"; print_r($data);echo"</pre>";
pour voir si les noms utilisés sont ceux retournés par la requête.
echo "<pre>"; print_r($data);echo"</pre>";
pour voir si les noms utilisés sont ceux retournés par la requête.
Cela me retourne cela dans mon tableau :
select glpi_users.realname, glpi_users.firstname, glpi_dropdown_tracking_category.completename, glpi_tracking.realtime FROM glpi.glpi_dropdown_tracking_category, glpi.glpi_tracking,glpi.glpi_users where glpi_dropdown_tracking_category.id=glpi.glpi_tracking.category and glpi.glpi_tracking.assign = glpi_users.id Order by glpi_users.name, glpi_dropdown_tracking_category.completename
select glpi_users.realname, glpi_users.firstname, glpi_dropdown_tracking_category.completename, glpi_tracking.realtime FROM glpi.glpi_dropdown_tracking_category, glpi.glpi_tracking,glpi.glpi_users where glpi_dropdown_tracking_category.id=glpi.glpi_tracking.category and glpi.glpi_tracking.assign = glpi_users.id Order by glpi_users.name, glpi_dropdown_tracking_category.completename
la requête estb retournée dans le tableau ???????
while ($data = mysql_fetch_array($result)) {
echo "<pre>"; print_r($data);echo"</pre>";
while ($data = mysql_fetch_array($result)) {
echo "<pre>"; print_r($data);echo"</pre>";
Volià il me retourne sa le problème c'est que moi je lui est demandé de me retourner que le realname, le first name et le completename
[0] => NOM
[realname] => NOM
[1] => Prenom
[firstname] => Prenom
[2] => Projet > Solutions industriels Graphiques > COSWIN Wizernes
[completename] => Projet > Solutions industriels Graphiques > COSWIN Wizernes
[0] => NOM
[realname] => NOM
[1] => Prenom
[firstname] => Prenom
[2] => Projet > Solutions industriels Graphiques > COSWIN Wizernes
[completename] => Projet > Solutions industriels Graphiques > COSWIN Wizernes
et dans le code on demande d'afficher :
$tbl = $tbl . "<td>" . $data["Nom de l'utilisateur"] . "</td>";
$tbl = $tbl . "<td>" . $data["Prénom de l'utilisateur"] . "</td>";
$tbl = $tbl . "<td>" . $data["Catégorie"] . "</td>";
$tbl = $tbl . "<td>" . $data["Temps passé dessus"] . "</td>";
$tbl = $tbl . "</tr>";
c'est pas les mêmes noms de variables alors ...$data["Nom de l'Utilisateur"] il ne connait pas !
$tbl = $tbl . "<td>" . $data["Nom de l'utilisateur"] . "</td>";
$tbl = $tbl . "<td>" . $data["Prénom de l'utilisateur"] . "</td>";
$tbl = $tbl . "<td>" . $data["Catégorie"] . "</td>";
$tbl = $tbl . "<td>" . $data["Temps passé dessus"] . "</td>";
$tbl = $tbl . "</tr>";
c'est pas les mêmes noms de variables alors ...$data["Nom de l'Utilisateur"] il ne connait pas !
J'ai essayer ce matin et rien ne change !!! Est ce que sa pourrait pas venir du fait que ma base est en myisam ???