Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > Bureautique
Bureautique Forum d'entraide sur la gestion dynamique de documents de bureautique (Word, Excel, OpenOffice...) avec PHP. Avant de poster -> Cours Excel, FAQ OpenXML, FAQ OpenDocument
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/10/2006, 17h27   #1
Invité de passage
 
Inscription : mars 2005
Messages : 18
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 18
Points : 0
Points : 0
Par défaut Création de colonne à partir de données SGBD

Bonjour,

Voilà donc mon petit souci. Je désire à partir d'un clic sur un bouton créer un document excel avec des infos de ma base de données. Tout se passe bien sauf que dans mon fichier excel tout est rangé dans une seule et même colonne
Donc voilà si une ame charitable pouvait me donner un pti' coup de main ça serait cool.

Merci


EDIT du titre
Toxick est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/10/2006, 20h50   #2
Membre Expert
 
Inscription : janvier 2005
Messages : 1 249
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : janvier 2005
Messages : 1 249
Points : 1 417
Points : 1 417
Pourquoi ne pas faire un fichier csv ? Chaque colonne est délimitée par des points virgules, chaque ligne par un retour chariot.
vg33 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2006, 15h07   #3
Invité de passage
 
Inscription : mars 2005
Messages : 18
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 18
Points : 0
Points : 0
Ok c'est cool, après pas mal de tentatives j'ai enfin trouvé où mettre ce fameux ";". Merci bien

Si j'ai d'autres questions je n'hésite pas
Toxick est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/10/2006, 16h06   #4
Invité de passage
 
Inscription : mars 2005
Messages : 18
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 18
Points : 0
Points : 0
Bonjour tout le monde,

Comme je le pensais précedement je me retrouve à nouveau bloqué dans mon programme. Alors pour faire simple lorsque je crée un rendez vous dans mon agenda via mon formulaire je peux laisser une note (pour mieux décrire le rdv). Ensuite une fois dans l'agenda il me suffit de cliquer sur une petite image se trouvant sur le rdv pour qu'un pop-up avec le détail du rdv s'affiche. Et cela marche très bien..... sur le planning de ma première personne. En effet sur les planning des deux autres individus je suis renvoyé à une page d'EasyPHP "Répertoires à la racine d'apache (www)"

Voici un bout de mon code :

Code :
1
2
3
4
5
6
7
$plageNote = date("H:i",mktime(floor($enr[1]),($enr[1]*60)%60,0,1,1,2000))."<IMG height='8' alt='' 
 
src='image/popup_jusqua.gif' width='8' border='0'>".date("H:i",mktime(floor($enr[2]),($enr[2]*60)%60,0,1,1,2000));
      $createurNote = ($enr[6]!=$USER_SUBSTITUE) ? " <A style='font-weight:normal;color:".$AgendaTexteTitrePopup."'>(Note 
 
créée par ".htmlspecialchars($enr[7]).")</A>" : "";
      $detailNote = htmlspecialchars(nlTObr($enr[5]))."&nbsp;";
ceci pour récuperer les valeurs


Code :
1
2
3
4
5
6
$matAff[$iMat][$colToUse] .= "<TD align=right><A href=\"/\" onclick=\"javascript: 
 
stc('".addslashes($detailNote)."','".addslashes($plageNote.$createurNote)."'); return false;\"><IMG 
 
src=\"image/popup_open.gif\" width=\"9\" height=\"8\" alt=\"Afficher le détail\" border=\"0\" align=\"absmiddle\"></A></TD>";
      $matAff[$iMat][$colToUse] .= "</TR></TABLE></TD>\n";
ceci pour les afficher


Donc si quelqu'un a une petite idée de la cause du souci ça serait sympa.
Merci d'avance



PS : petite question HS mais est ce que les ";" pour changer de colonnes sous excel fonctionnent sous Office 2000 ? ou que sous Office XP ?
Toxick est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/10/2006, 17h51   #5
Membre Expert
 
Inscription : janvier 2005
Messages : 1 249
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : janvier 2005
Messages : 1 249
Points : 1 417
Points : 1 417
Citation:
Envoyé par Toxick
PS : petite question HS mais est ce que les ";" pour changer de colonnes sous excel fonctionnent sous Office 2000 ? ou que sous Office XP ?
Le format CSV est standardisé. Il est donc valable pour toutes les applications, et pas seulement sous M$ Office.
Au passage, réfère-toi aux spécifications du format, et tu verras notamment que par défaut c'est la virgule le séparateur de colonnes, et non le point-virgule comme je te l'ai indiqué plus haut.
Tu as aussi une fonction php qui te permet de parser directement un fichier csv : fgetcsv(). Une autre te permet d'écrire en csv : fputcsv() (php 5.1.0RC1+).
vg33 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/10/2006, 18h11   #6
Invité de passage
 
Inscription : mars 2005
Messages : 18
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 18
Points : 0
Points : 0
Citation:
Envoyé par vg33
Le format CSV est standardisé. Il est donc valable pour toutes les applications, et pas seulement sous M$ Office.
Au passage, réfère-toi aux spécifications du format, et tu verras notamment que par défaut c'est la virgule le séparateur de colonnes, et non le point-virgule comme je te l'ai indiqué plus haut.
Tu as aussi une fonction php qui te permet de parser directement un fichier csv : fgetcsv(). Une autre te permet d'écrire en csv : fputcsv() (php 5.1.0RC1+).
OK merci de ces précisions. Je disais ça car sur mon poste (XP+Office XP) pas de souci, hors lorsque j'ai voulu changer de poste (XP+Office 2000) les données rangées dans mon fichier csv étaient dans une seule et même colonne avec entre chaque champs le fameux ;. Ca doit donc être autre chose.

Toxick est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/10/2006, 18h12   #7
Invité de passage
 
Inscription : mars 2005
Messages : 18
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 18
Points : 0
Points : 0
Citation:
Envoyé par Toxick
Bonjour tout le monde,

Comme je le pensais précedement je me retrouve à nouveau bloqué dans mon programme. Alors pour faire simple lorsque je crée un rendez vous dans mon agenda via mon formulaire je peux laisser une note (pour mieux décrire le rdv). Ensuite une fois dans l'agenda il me suffit de cliquer sur une petite image se trouvant sur le rdv pour qu'un pop-up avec le détail du rdv s'affiche. Et cela marche très bien..... sur le planning de ma première personne. En effet sur les planning des deux autres individus je suis renvoyé à une page d'EasyPHP "Répertoires à la racine d'apache (www)"

Voici un bout de mon code :

Code :
1
2
3
4
5
6
7
$plageNote = date("H:i",mktime(floor($enr[1]),($enr[1]*60)%60,0,1,1,2000))."<IMG height='8' alt='' 
 
src='image/popup_jusqua.gif' width='8' border='0'>".date("H:i",mktime(floor($enr[2]),($enr[2]*60)%60,0,1,1,2000));
      $createurNote = ($enr[6]!=$USER_SUBSTITUE) ? " <A style='font-weight:normal;color:".$AgendaTexteTitrePopup."'>(Note 
 
créée par ".htmlspecialchars($enr[7]).")</A>" : "";
      $detailNote = htmlspecialchars(nlTObr($enr[5]))."&nbsp;";
ceci pour récuperer les valeurs


Code :
1
2
3
4
5
6
$matAff[$iMat][$colToUse] .= "<TD align=right><A href=\"/\" onclick=\"javascript: 
 
stc('".addslashes($detailNote)."','".addslashes($plageNote.$createurNote)."'); return false;\"><IMG 
 
src=\"image/popup_open.gif\" width=\"9\" height=\"8\" alt=\"Afficher le détail\" border=\"0\" align=\"absmiddle\"></A></TD>";
      $matAff[$iMat][$colToUse] .= "</TR></TABLE></TD>\n";
ceci pour les afficher


Donc si quelqu'un a une petite idée de la cause du souci ça serait sympa.
Merci d'avance
Toxick est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/10/2006, 19h23   #8
Membre Expert
 
Inscription : janvier 2005
Messages : 1 249
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : janvier 2005
Messages : 1 249
Points : 1 417
Points : 1 417
Citation:
Envoyé par Toxick
OK merci de ces précisions. Je disais ça car sur mon poste (XP+Office XP) pas de souci, hors lorsque j'ai voulu changer de poste (XP+Office 2000) les données rangées dans mon fichier csv étaient dans une seule et même colonne avec entre chaque champs le fameux ;. Ca doit donc être autre chose.
Je te dis : la séparation par défaut est la virgule, pas le point virgule. Le plus simple pour toi pour t'en rendre compte est de créer un fichier excel, de l'enregistrer en .csv, puis de l'ouvrir dans word. Tu verras immédiatement comment se présente un fichier csv. Bien entendu, tu peux faire la même manip avec OpenOffice (calc et writer) ou n'importe quel tableur du marché.
vg33 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2006, 08h30   #9
Invité de passage
 
Inscription : mars 2005
Messages : 18
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 18
Points : 0
Points : 0
Citation:
Envoyé par vg33
Je te dis : la séparation par défaut est la virgule, pas le point virgule. Le plus simple pour toi pour t'en rendre compte est de créer un fichier excel, de l'enregistrer en .csv, puis de l'ouvrir dans word. Tu verras immédiatement comment se présente un fichier csv. Bien entendu, tu peux faire la même manip avec OpenOffice (calc et writer) ou n'importe quel tableur du marché.
thx


Sinon personne a une petite idée pour l'autre problème
Toxick est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h58.


 
 
 
 
Partenaires

Hébergement Web