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 27/02/2006, 14h45   #1
Membre éclairé
 
Avatar de hisy
 
Inscription : novembre 2004
Messages : 373
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 373
Points : 300
Points : 300
Par défaut Utilisation de COM() => Erreur Apache

Bonjour,

Je voudrais lancer Excel sur un serveur Windows depuis mon code PHP via la commande COM.

Malheureusement j'ai systématiquement une fenetre Grise avec un croix rouge et un message de type Erreur Application Apache ...

Si quelqu'un peut m'aider ...

coté PHP j'ai ajouter l'extension Win32_api et voici ma rubrique [com] dans php.ini :

Citation:
[com]
path to a file containing GUIDs, IIDs or filenames of files with TypeLibs
;com.typelib_file =
;allow Distributed-COM calls
com.allow_dcom = true
;autoregister constants of a components typlib on com_load()
;com.autoregister_typelib = true
;register constants casesensitive
com.autoregister_casesensitive = false
;show warnings on duplicate constat registrations
com.autoregister_verbose = true
__________________
Take it HiSy
hisy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2006, 08h15   #2
Membre éclairé
 
Avatar de hisy
 
Inscription : novembre 2004
Messages : 373
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 373
Points : 300
Points : 300
Ok ... Pas de réponse ...
C surement que la question est mal posée

Bon ... J'ai besoin d'utiliser la commande COM pour attaquer de Business Object depuis PHP ...
Pour faire simple, je voulais commencer en local avec du Excel ( que j'ai en local ) mais tous les codes que je récupère me génèrent une erreur Apache :



Et pis j'ai un page Not Found ...

Alors est lié à EasyPHP ou a ma config ?

Voici un code qui suffit à me planter :

Code :
1
2
3
4
5
6
7
8
 
 
		$excel=new COM("Excel.application");
		$excel->sheetsinnewworkbook=1;
		$excel->Workbooks->Add();
		$book=$excel->Workbooks(1);
		$sheet=$book->Worksheets(1);
		$sheet->Name="Rapport appel des clients";
__________________
Take it HiSy
hisy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/03/2006, 10h31   #3
Membre éclairé
 
Avatar de hisy
 
Inscription : novembre 2004
Messages : 373
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 373
Points : 300
Points : 300
Cher HiSy
Voici quelques éléments réponse pour ceux qui suivraient ce post.

Il semble que mon erreur vienne de EasyPHP, selon un règle trouvée sur d'autres Forums

COM + EasyPHP = Erreur ...

J'ai donc installé mes modules W.A.M.P séparément et ca marche !!!

Alors pour ceux qui doivent attaquer une base via BO (business Object ) en php voici un code qui marche :



Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
<?php 
 
// Je set qlq vars 
 
$mdp='titi';
$user='toto';
 
$bo = new COM("BusinessObjects.Application") or die("impossible d'instancier BO"); 
$bo->LoginAs($user, $mdp, false, "Mon Univers BO");
$doc=$bo->Documents->Open("c:\chute.rep"); // ma requete BO
$bo->Interactive= false;
//$doc->Refresh(); 
$bo->Interactive= true;
$pro=$bo->ActiveDocument->DataProviders->Item(1);
//boExpDbase (1), boExpExcel (2), boExpAsciiTab (4), boExpAsciiCSV (5), boExpExcel97 (6) or boExpXML(7).
$pro->ConvertTo(6, 1, "C:\chute.xls"); // mon ficher de resultat XLS
$doc->Close();
unset($bo);
?>
__________________
Take it HiSy
hisy est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h25.


 
 
 
 
Partenaires

Hébergement Web