générer un fichier excel en php sous apache - PHP - Programmation
Marsh Posté le 20-05-2005 à 16:33:10
même pas un msg d'erreur ?
essaye de mettre error_reporting(E_ALL); au début de ton script, on y verra peut être plus clair
Marsh Posté le 20-05-2005 à 19:44:22
tikyoka a écrit : oui j'ai une erreur! |
tu mets
<?
error_reporting(E_ALL);
?>
pas
<? echo E_ALL; ?>
Marsh Posté le 23-05-2005 à 10:04:55
alors sous easyphp j'ai plein d'erreur dans writeexcel
mais bizarement l'appli marche!
et avec apache il ne m'indique aucune erreur et l'appli
ne fonctionne pas.
Marsh Posté le 23-05-2005 à 10:06:17
tikyoka a écrit : alors sous easyphp j'ai plein d'erreur dans writeexcel |
EasyPHP utilise APACHE.
Marsh Posté le 23-05-2005 à 10:51:52
dans le fichier mime type j'ai bien :
application/vnd.ms-excel xls
Y a t'il quelque chose à configurer dans apache
pour qu'il lance l'application excel?
Ou quel code faut-t'il rajouter pour ouvrir excel
dans le navigateur?
Marsh Posté le 23-05-2005 à 11:45:32
tikyoka a écrit : svp aidez-moi |
si tu veux qu'on t'aide va falloir nous aider avant :
- messages d'erreurs ?
- bout de code ?
Marsh Posté le 23-05-2005 à 11:59:51
soju a écrit : si tu veux qu'on t'aide va falloir nous aider avant : |
Voilà le code :
Code :
|
et quand aux erreurs ce sont que des notice du genre :
Notice: The call_user_method_array() function is deprecated, use the call_user_func variety with the array(&$obj, "method" ) syntax instead in c:\program files\easyphp\www\vip\writeexcel\class.writeexcel_format.inc.php on line 113
Marsh Posté le 23-05-2005 à 15:19:54
recapitulons :
- avec easyphp tu as les notices et l'appli marche ? (bizarre car si ya des notices, ton header ne fonctionnera pas...)
- avec apache sans easyphp tu as une page blanche ? (même avec error_reporting(E_ALL); ???)
c'est bien ça ?
Marsh Posté le 23-05-2005 à 15:36:17
oui c'est bien ça!
apparemment ça plante au moment des :
require_once "../writeexcel/class.writeexcel_workbook.inc.php";
require_once "../writeexcel/class.writeexcel_worksheet.inc.php";
Peut être que la classe writeexcel n'est pas compatible
avec php5? Car ça marche avec php4.2...
Marsh Posté le 23-05-2005 à 15:59:16
forcemment... je pensais depuis le début que tu utilisais la même version de php...
Marsh Posté le 23-05-2005 à 16:47:57
Mon problème c'est donc que je ne sais pas avec quelle
méthode générer un fichier excel en utilisant php5.
J'ai testé avec les méthodes writeexcel et COM.
Je ne sais pas ce qui est le plus approprié?
Marsh Posté le 23-05-2005 à 16:57:18
t'as essayé avec http://pear.php.net/package/Spreadsheet_Excel_Writer/ ? (je ne sais pas si compatible php5)
Marsh Posté le 24-05-2005 à 11:18:09
Merci de votre aide.
Mais je ne trouve pas vraiment de doc pour utiliser
spreadsheet_excel_writer. Avez vous un fichier exemple?
Marsh Posté le 24-05-2005 à 12:05:00
quelqu'un a-t'il déjà utilisé la classe spreadsheet_excel_writer pour générer un fichier excel?
Pourriez-vous me donner des indices svp?
(Je suis sous windows et php 5)
Marsh Posté le 24-05-2005 à 13:42:53
tikyoka a écrit : Mais je ne trouve pas vraiment de doc pour utiliser |
http://pear.php.net/manual/en/pack [...] writer.php
Marsh Posté le 24-05-2005 à 14:58:24
Merci pour la doc!
Je teste et voilà l'erreur qu'il me met :
Fatal error: Failed opening required 'PEAR.php' (include_path='.;C:\Program Files\EasyPHP\php\pear\Includes') in c:\program files\easyphp\www\vip\script\Spreadsheet\Excel\Writer.php on line 34
Je n'ai pas de fichier pear.php dans le package que j'ai dl.
et apparemment c'est pas le seul fichier qui me manque.
Alors savez-vous comment installer spreadsheet_excel_writer
sous windows?
Marsh Posté le 24-05-2005 à 15:08:42
install pear d'abord : http://pear.php.net/manual/fr/installation.php
Marsh Posté le 25-05-2005 à 08:59:31
Sinon tu peux utiliser les fichier excel au format csv...
C'est tout de même beaucoup plu simple nan?
http://www.asp-php.net/scripts/asp [...] _excel.php
http://odbcphp.free.fr/php-odbc.php?m=xls
Marsh Posté le 25-05-2005 à 09:10:00
et comme ça tu plombera pas ton serveur avec l'imonde PEAR *lance sa bataille contre les moulins a vent*
Marsh Posté le 25-05-2005 à 09:17:20
ReplyMarsh Posté le 25-05-2005 à 09:19:04
Bah désolé, je ne passe pas tout le temps ici.
Et puis je viens de m'y mettre (à la manipulation de fichier excel).
Marsh Posté le 25-05-2005 à 09:43:43
Spreadsheet_Excel_Writer est parfait et simple d'utilisation
je le conseille vivement
Marsh Posté le 25-05-2005 à 09:44:22
Spir a écrit : Bah désolé, je ne passe pas tout le temps ici. |
oups, desole je t'ai confondu avec tikyoka
Marsh Posté le 25-05-2005 à 09:45:04
Mais nan le CSV c'est mieux.
Pas de souci de macro ou de virus si tu importe... Bien que là on parle de générer...
Marsh Posté le 26-05-2005 à 15:01:52
Merci de votre aide.
J'ai finalement fait mon fichier en csv, c'est en effet ce qu'il y a de plus simple avec ph5!
Code :
|
Mais j'ai encore une question? eh oui encore!
Je crée ce fichier csv pour du publipostage et je suis obligé de le transformer en .xls
manuellement pour qu'il soit utilisable avec la fonction publipostage de word.
Je souhaiterai donc que le fichier csv soit enregistrer en .xls directement.
Quelqu'un a une idée?
Marsh Posté le 26-05-2005 à 15:07:07
tikyoka a écrit : Je souhaiterai donc que le fichier csv soit enregistrer en .xls directement. |
on tourne en rond...
sinon le publipostage se fait aussi avec du cvs
Marsh Posté le 27-05-2005 à 10:38:52
Salut,
J'ai un probleme avec les objets com sous PHP 4.3, le serveur appache plante a chaque fois que je fais une invocation,j'ai activé la gestion du com dans le PHP.ini mais ca plante toujours?
Vous savez d'ou vient le pobleme?
Marsh Posté le 27-05-2005 à 11:10:08
Essai peut etre en rajoutant WinNT:// devant le nom de l'application :
$domainObject = new COM("WinNT://Domain" );
http://www.zend.com/php5/articles/php5-dotnet.php
Marsh Posté le 27-05-2005 à 11:14:40
Pour mon pb j'ai trouvé une solution :
J'ai remplacé $file="fichier.csv"; par $file="fichier.xls"
et dans $contenu, à la place d'écrire des ";" dans le fichier
je met des tabulations "\t"
Marsh Posté le 27-05-2005 à 11:57:28
esox_ch a écrit : et comme ça tu plombera pas ton serveur avec l'imonde PEAR *lance sa bataille contre les moulins a vent* |
N'empeche esox, pear est une bonne chose je trouve, le problème c'est que ca n'est pas inclut dans php ...
Pour moi c'est une facon de centraliser des fonctions utiles, et d'en faire profiter les développeurs php
Marsh Posté le 27-05-2005 à 12:08:38
tikyoka a écrit : Pour mon pb j'ai trouvé une solution : |
Merci tikyoka j'ai essayé ce bout de code mais il freeze apache
Code :
|
Marsh Posté le 27-05-2005 à 13:20:25
tikyoka a écrit : Pour mon pb j'ai trouvé une solution : |
Astucieu et intéressant!
Marsh Posté le 30-05-2005 à 11:45:18
Salut le forum,
j' ai le script suivant tout simple pour me permettre de tester :
<?
//démarage de word
$word = new COM("word.application" ) or die("Impossible d'ouvrir Word" );
//Activation
$word->Visible = 1;
//ouverture d'un document vide
$word->Documents->add();
//Ecriture dans le document
$word->Selection->TypeText("Ceci est un test" );
$word->Documents[1]->SaveAs("Fichier_inutile.doc" );
//Fermeture de word
$word->Quit();
//Libération de l'objet
$word->Release();
$word = null;
?>
J'ai installé EasyPhp. Qd je lance ce script, j'ai un message d'erreur proveant d'apache.exe qui me signale une erreur dans la mémoire.
Comment je pourrais résoudre ce probleme ?
Merci de votre aide.
Marsh Posté le 31-05-2005 à 11:42:20
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 ...
Marsh Posté le 20-05-2005 à 16:07:15
Bonjour,
J'arrive à générer un fichier excel en php, je test tout sous easyphp, ça marche.
Mais voilà maintenant on a installé apache, mysql... sur le serveur
et là plus rien ne marche. A la place d'avoir un fichier excel j'ai une belle
page blanche!
Je ne sais pas si cela vient de la configuration d'apache ou de mon script php.
(Je génere le fichier .xls avec writeexcel)
Merci de vos réponses je commence à plus savoir quoi faire!