Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2607 connectés 

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Suivante
Auteur Sujet :

générer un fichier excel en php sous apache

n°1102695
erwan551
Posté le 31-05-2005 à 11:42:20  profilanswer
 

Reprise du message précédent :
Bonjour tous le monde,
 
personne ne peut m'aider?
Il suffit peut etre juste d'une petite modifications dans la configuration ??
 
Si quelqu'un peut m'aider ce serait sympa.
 
Merci d'avance ...

mood
Publicité
Posté le 31-05-2005 à 11:42:20  profilanswer
 

n°1102788
PETOZAK
Posté le 31-05-2005 à 12:43:33  profilanswer
 

Est ce que Apache plante et se relance?
Est ce qu'il te met des trucs dans le log?
 
J'ai eu le meme probleme et j'ai abandonné les COM qui sont une solution trés décriés

n°1103083
erwan551
Posté le 31-05-2005 à 16:18:24  profilanswer
 

Apache plante puisqu'il indique un message d'erreur (probleme au niveau de la mémoire)
Je sais pas trop s'il met des trucs dans le log.
 
Sinon PETOZAK, tu dis que tu as abandonné les COM qu'as tu utilisés à la place pour faire la liaison entre php et excel (ou world) ??
 
J'espere que tu pourras me répondre.
 
Merci d'avance ....

n°1103154
betsamee
Asterisk Zeperyl
Posté le 31-05-2005 à 16:51:35  profilanswer
 

utilises la classe Excel_Spreadsheet_writer (geniallissime et simplissime) ou a la limite des fichier tab delimited (si ton excel est pas trop complique)

n°1103387
PETOZAK
Posté le 31-05-2005 à 20:16:56  profilanswer
 

betsamee a écrit :

utilises la classe Excel_Spreadsheet_writer (geniallissime et simplissime) ou a la limite des fichier tab delimited (si ton excel est pas trop complique)


 
Je confirme pour spreadsheet excellent comme tout ce qui a gravite autour e la galaxie pear....
Word, j'ai abandonné...:( mes devis assés finalment tres bien sous spreadsheet :)

n°1103951
erwan551
Posté le 01-06-2005 à 12:03:41  profilanswer
 

Ok merci beaucoup de votre aide.
 
Par contre c'est difficile de trouver de la documentation sur ce sujet. Si quelqu'un à quelques pistes ?
 
Merci encore..

n°1104113
betsamee
Asterisk Zeperyl
Posté le 01-06-2005 à 14:22:19  profilanswer
 

je peux t'envoyer du code que j'ai pondu si ca t'interesse (tres simple)

n°1105385
erwan551
Posté le 02-06-2005 à 14:32:23  profilanswer
 

salut betsamee
 
oui ok je veux bien ca peut m'aider.
j'essayerai de le comprendre.
 
Merci

n°1105455
betsamee
Asterisk Zeperyl
Posté le 02-06-2005 à 15:02:36  profilanswer
 

Code :
  1. require_once 'Writer.php';
  2. $workbook = new Spreadsheet_Excel_Writer($chemin.$file);
  3. $worksheet =& $workbook->addWorksheet('Titre');
  4. $format_Arial =& $workbook->addFormat();
  5. $format_Arial->setFontFamily('Arial');
  6. $format_Arial->setBold();
  7. $format_Arial->setSize(10);
  8. $format_Ar =& $workbook->addFormat();
  9. $format_Ar->setFontFamily('Arial');
  10. $format_Ar->setSize(10);
  11. $DB_Server = $servname;
  12. $DB_Username = $usr;
  13. $DB_Password = $pwd;
  14. $DB_DBName = $db;
  15. $DB_TBLName = $table;
  16. $sql = "Select * from $DB_TBLName";
  17. $Connect = mysql_connect($DB_Server, $DB_Username, $DB_Password)
  18.     or die("Couldn't connect to MySQL:<br>" . mysql_error() . "<br>" . mysql_errno());
  19. $Db = mysql_select_db($DB_DBName, $Connect)
  20.     or die("Couldn't select database:<br>" . mysql_error(). "<br>" . mysql_errno());
  21. $result = mysql_query($sql,$Connect)
  22.     or die("Couldn't execute query:<br>" . mysql_error(). "<br>" . mysql_errno());
  23. for ($i = 0; $i < mysql_num_fields($result); $i++) {
  24.         $worksheet->write(0, $i,mysql_field_name($result,$i),$format_Arial);
  25. }
  26. $i=1;
  27.   while($row = mysql_fetch_row($result))
  28.     {
  29.         for($j=0; $j<mysql_num_fields($result);$j++)
  30.         {
  31.          $worksheet->writestring($i, $j,$row[$j] ,$format_Ar);
  32.        }
  33.   $i++;
  34.     }
  35. mysql_close($Connect);
  36. $workbook->close();

n°1105793
erwan551
Posté le 02-06-2005 à 16:45:56  profilanswer
 

Merci betsamee !
 
je vais me pencher sur ton code pour essayer de le comprendre. Je pense qu'on peut aussi faire la meme chose en utilisant Excel pour faire des graphiques par exemples !!
 
Je vais essayer de trouver de la doc sur le web et me renseigner.  
 
Peut être qu'un bon site parle déja de ca en français ??
 
Merci de votre aide

mood
Publicité
Posté le 02-06-2005 à 16:45:56  profilanswer
 

n°1105802
betsamee
Asterisk Zeperyl
Posté le 02-06-2005 à 16:49:52  profilanswer
 

en francais y a pas grandchose en revanche ici :
http://www.appelsiini.net/~tuupola [...] riter.html
tu peux trouver pas mal d'aide

n°1105851
erwan551
Posté le 02-06-2005 à 17:17:09  profilanswer
 

merci betsamee !!
 
mon anglais est pas terrible mais je vais essayer de me débrouiller  
Merci beaucoup pour ton aide.

n°1105962
betsamee
Asterisk Zeperyl
Posté le 02-06-2005 à 18:34:17  profilanswer
 

de rien  
ayant pas mal galere pour trouver un outil valable pour generer du xls j'essaie d'en faire profiter

n°1106232
Spir
Words are timeless
Posté le 02-06-2005 à 21:55:56  profilanswer
 

Merci aussi ca à l'air pas mal.

n°1106728
PETOZAK
Posté le 03-06-2005 à 11:30:13  profilanswer
 

Juste un conseil telecherger les CHMs c'est tellement plus pratique et c'est ici :
http://pear.php.net/distributions/ [...] ual_fr.chm
;)

n°1106891
erwan551
Posté le 03-06-2005 à 13:32:50  profilanswer
 

Me revoila
 
j'ai déja un probleme j'ai testé ceci pris dans le lien que m'avais donné betsamee :
 
<html>
<body>
 
<?php
require_once 'Writer.php';  
$workbook = new Spreadsheet_Excel_Writer('php_excel.xls');
$worksheet =& $workbook->addWorksheet('Mon premier test en php');
$workbook->close();
?>
 
</body>
</html>
 
 
Et j'ai déja un probleme!! La 1ere ligne n'est pas connue.  
A quoi corespond elle ??
Comment le résoudre ?
 

n°1106901
betsamee
Asterisk Zeperyl
Posté le 03-06-2005 à 13:43:20  profilanswer
 

il va sans dire qu'il te faut telecharger la classe afin del'inclure dans tes pgmes

n°1107207
PETOZAK
Posté le 03-06-2005 à 16:22:11  profilanswer
 

:D, je pense qu'il y a comme meme pensé!
Rassure nous?? :p


Message édité par PETOZAK le 03-06-2005 à 16:22:29
n°1111146
erwan551
Posté le 07-06-2005 à 14:46:00  profilanswer
 

:sleep: si je le savais mais je croyais l'avoir déja!!
il faut donc que je la mettes mais je la trouve ou cette classe? :bounce:

n°1111807
betsamee
Asterisk Zeperyl
Posté le 07-06-2005 à 20:37:29  profilanswer
 

cherches Spreadsheet_excel_Writer sur google

n°1113606
erwan551
Posté le 09-06-2005 à 10:01:55  profilanswer
 

Salut tous le monde,
 
j'ai peut etre trouver une autre solution qui est plus simple.
 
D'apres mon script php, j'appelle une macro de excel. Cette macro récupère des variables utiles transmis par php via l'url par exemple.
Cette macro traite donc ce qu'elle doit faire en fonction des variables transmises.
 
Cette méthode est pas mal ??! Je pense que ca peut marcher non ?

n°1113632
PETOZAK
Posté le 09-06-2005 à 10:25:03  profilanswer
 

les macros c MAL...

n°1113759
betsamee
Asterisk Zeperyl
Posté le 09-06-2005 à 11:46:50  profilanswer
 

ben le probleme c'est qu'il te faut excel
et puis appeler une macro excel de l'exterieur c pas possible.
La seule solution est de mettre cette macro a l'ouverture.
et puis c pas tres propre car trop dependant de la config
 
 

n°1114010
erwan551
Posté le 09-06-2005 à 14:20:57  profilanswer
 

:cry:  
 
Pourquoi trop dépendant de la config ?
En tous les cas ca à l'air beaucoup plus simple je trouve!  
 
Mais si on peut pas appeler une macro de l'extérieur c'est sur ca va être difficile!
 
Betsamee, avec ton programme plus haut, c'est bien possible de controler Excel en envoyant des variables PHP et ainsi réaliser un graphique par exemple ou un tableau ?

n°1114041
betsamee
Asterisk Zeperyl
Posté le 09-06-2005 à 14:35:09  profilanswer
 

faut voir ca dans la doc ca m'ettonerais

n°1114070
erwan551
Posté le 09-06-2005 à 14:51:08  profilanswer
 

En fait ce que je dois faire, c'est de récupérer des infos dans des menus déroulants. Je récupere donc ceci en php. Ensuite, en fonction de ce qui est mis dans les menus déroulants, je dois lancer excel. Mettre certaines données en abscisses, d'autres en ordonnées .. bref faire une graphique ou un tableau en commandant Excel. COM permet de faire ça mais ca ne marche pas.  
 
Donc cela est-il possible ??   Spreadsheet_excel_Writer est-il LA SOLUTION  pour le réaliser ??
 
Désolé mais j'ai vraiment besoin de conseils ??  
 
merci.  

n°1114336
PETOZAK
Posté le 09-06-2005 à 16:32:32  profilanswer
 

Si tu dois faire des trucs graphiques (tableau,diagramme...) generes automatiquement alors je pense que tu peux oublier spread...
Mettre les données ca se fait sans probleme...
Mettre des formules aussi...
Creer un tableau en auto je pense pas :(
 

n°1114377
betsamee
Asterisk Zeperyl
Posté le 09-06-2005 à 16:46:24  profilanswer
 

en revanche tu peux generer des graphiques separement (des .png) avec une autre classe que j'ai trouve sur le net : GraPHP-ic.php

n°1114464
erwan551
Posté le 09-06-2005 à 17:11:55  profilanswer
 

Merci beaucoup de votre aide PETOZAK et Betsamee !
 
Par contre, je dois faire le graphique dans excel donc les .png ne coresponde pas.
 
Pour le moment il n'y a que l'objet COM qui est tres intéressant. Mais je n'arrive pas a le faire fonctionner  :cry:  
S'il marchait, je pourrais commander Excel!!!
 
Je ne sais plus quoi faire je ne vais pas y arriver  :??:  
Pourtant ca doit être possible !!

n°1114747
PETOZAK
Posté le 09-06-2005 à 20:05:14  profilanswer
 

La solution de Betsamee est bonne,vu qu'avec la methode setBitmap tu peux mettre une image sous Excel ;)...
Juste pense a convertir ton png en BMP :)

n°1115929
erwan551
Posté le 10-06-2005 à 16:18:54  profilanswer
 

Oula ca devient compliqué !!
 
L'objet COM est pas mal quand même non ??
 

n°1116590
PETOZAK
Posté le 11-06-2005 à 13:10:10  profilanswer
 

non COM pas bien...c'est l'expression flagrant de la faineantise mercantile de Microsoft incapable de developper un systeme de RPC valable...
Tu sais quand tu utilise les COMs c'est comme si tu ouvrais word et tout ce que tu fais c'est comme si un robot le faisait pour toi en arriere plan...Bref tu peux te retrouver avec 300 instances de Word ouvertes sans que tu es de controle dessus...
COM c'est nul!

n°1118363
erwan551
Posté le 13-06-2005 à 14:56:41  profilanswer
 

Salut,
 
je sais pas si .png c'est bien mais moi je dois absolument avoir l'interface Excel car il peut y avoir en meme temps les données, des tableaux, des graphiques...
 
J'ai juste à récupérer des données en php provenant de formulaires, les mettre dans Excel et en faire de ces données un graphique corespondant à ce qui est demandé dans le formulaire.
 
Sinon Excel est commandé par VBA peut etre ?? Mais peut on y passer des variables PHP??

n°1122222
betsamee
Asterisk Zeperyl
Posté le 16-06-2005 à 16:41:28  profilanswer
 

tu peux comme dis plus haut creer un fichier tab delimited avec php ensuite tu passes la main a vba qui se charge  de l'importer sous excel et de creer tout ce qu tu veux

n°1125286
erwan551
Posté le 20-06-2005 à 15:46:26  profilanswer
 

salut betsamee, oui je pense que je vais faire ca.
Il faut que je vois comment récupérer les infos avec VBA.  
Je sais pas si on peut récupérer des variables PHP depuis VBA ?

n°1131122
PETOZAK
Posté le 26-06-2005 à 02:00:14  profilanswer
 

erwan551 a écrit :

salut betsamee, oui je pense que je vais faire ca.
Il faut que je vois comment récupérer les infos avec VBA.  
Je sais pas si on peut récupérer des variables PHP depuis VBA ?


 
Tu peux ecrire tes variables PHP dans un fichier que lira VBA ;)

n°1133199
erwan551
Posté le 28-06-2005 à 09:58:44  profilanswer
 

Oui voila.
 
Mais j'ai entendu dire que COM marchait avec PHP5. Mais Easy PHP n'as pas de version en PHP5 encore.
 
Toute facon COM s'est trop instable ca génere souvent des erreurs  et c'est pas du tout fiable!
 
Quelqu'un connait la langage SVG ?? On peut réaliser des graphiques mais je sais pas s'il existe une concordance avec Excel.
 
Si j'utilise VBA, j'espere que je peux réaliser quelque chose d'automatique . Des que mon script PHP a récupérer les données puis insérer dans un fichier .csv il faut que directement Excel soit ouvert et que VBA me cré le graphique en fonction de ces données sans que l'utilisateur ne fasse quelque chose (sauf bien sur un click sur un bouton pour lancer le tout) !!

n°1198415
VenerZen
M - D - M
Posté le 13-09-2005 à 12:52:05  profilanswer
 

:hello:
 
J'ai un soucis avec la methode insertBitmap de la classe Spreadsheet_Excel_Writer. Chez moi ça ne fonctionne pas. J'ai pas de messages d'erreur, parcontre le reste fonctionne bien. Le fichier excel est généré, seule l'image manque.
Si quelqu'un avait un exemple ou avait réussit à le faire fonctionner, je veux bien un coup de main :)
Je suis en php5.


Message édité par VenerZen le 13-09-2005 à 12:52:23

---------------
"L'abus de modération, nuit gravement à la consommation"
n°1198548
VenerZen
M - D - M
Posté le 13-09-2005 à 14:55:21  profilanswer
 

Bon j'ai fait tester un pote ayant excel sous windows. En fait là bas  ça fonctionne bien. C'est avec openoffice, dû moin sous linux, que ça ne passe pas.
Elle est bien sinon cette classe.
 
:jap:


---------------
"L'abus de modération, nuit gravement à la consommation"
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Suivante

Aller à :
Ajouter une réponse
 

Sujets relatifs
[Perl & XML] Validatin d'un fichier XMLcreer un fichier
renommer automatiquement une case dans un fichier Excel[vba excel] recuperer le nom d'une feuille dans une variable
recherche de fichier en javaRemplir des champs d'un fichier pdf
Récup de données numérique fichier txtAssemblage de fichier
inserer des donnée dans un fichier 
Plus de sujets relatifs à : générer un fichier excel en php sous apache


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR