PHP + RTF : sauvegarder le RTF

PHP + RTF : sauvegarder le RTF - PHP - Programmation

Marsh Posté le 22-03-2006 à 15:29:19    

Bonjour à tous,
 
Je dois à l'heure actuelle modifier une partie de mon intranet ( appli Web )et voici ce que je dois faire concrètement.
 
L'utilisateur étant connecté au programme ( PHP / MySQL ), il doit à un moment bien précis créer des courriers pour l'envoi client. Ces courriers sont repertoriés sous 4 modèles types.
 
Etape1
Quand l'utilisateur choisi un des modèles, le courrier associé est généré automatiquement au format RTF ( les informations relatives à l'utilisateur sont écrites dans le fichier par passage de variables PHP et le RTF est stocké sur le serveur )
 
Cette étape étant validée, je dois maintenat permettre à l'utilisateur de:
 
Etape2
Consulter le courrier qui a été généré par le logiciel. Pour cela, un simple hyperlien à la génération du fichier sur lequel l'utilisateur clique et le courrier s'ouvre dans une page IE
 
Cette étape est validée
 
Etape3
Maintenant ça se corse car une fois le fichier RTF ouvert dans la fenetre internet explorer, l'utilisateur a accès au fichier en modification. Il peut alors taper des choses supplémentaires etc
 
MAIS le problème survient après : je n'ai pas de moyen d'enregistrer en automatique les modifications manuelles sur le fichier RTF.
 
exemple
1. je génère mon RTF
2. je l'ouvre dans IE
3. je tape à la main dautres modifs
4. je dois enregistrer ces modif ???
 
Ma grande question est :
Après avoir ouvert ce RTF dans IE et après y avoir fait des modifs. Comment puis enregistrer via du code les modifs apportées ?
 
J'ai essayé via VBS mais je ne parviens pas a atteindre la fonction Save de word. Existe-il des moyens en PHP ou autre ?
 
Merci par avance

Reply

Marsh Posté le 22-03-2006 à 15:29:19   

Reply

Marsh Posté le 22-03-2006 à 15:42:34    

Bin etant donné qu'a partir de l'étape 3 le fichier RTF "n'est plus sur le serveur" mais sur le poste client, tu vas avoir du mal, avec un langage serveur à le sauvegarder.
Est ce que tu peux proposer que l'utilisateur le recharge dans un formulaire avec un input file? ( note cela ne garantit en rien que le RTF affiché dans le browser et le RTF uploadé sur le serveur seront identiques... )

Reply

Marsh Posté le 22-03-2006 à 16:23:00    

tu peut pas faire plus simple, genre tu lui fait remplir un formulaire web, quitte à lui fournir ensuite une version RTF du formulaire qu il a rempli pour impression?

Reply

Marsh Posté le 22-03-2006 à 16:25:00    

(ça évite aussi qu il écrive des trucs imprévus dans le RTF)
(tu peut t arranger pour avoir exactement la même présentation en RTF et en html, vu que tu est en environnement contrôlé)

Reply

Marsh Posté le 22-03-2006 à 16:29:43    

une question en passant : comment fais-tu pour générer ton ficheir rtf? Tu utilise PHP+COM+Word sur le serveur ou t'as une librairie en php qui génère le rtf?

Reply

Marsh Posté le 22-03-2006 à 17:28:44    

En fait pour répondre :
-> le fichier RTF que l'utilisateur pourra afficher dans IE sera ouvert du serveur et sont directement généré aussi sur le serveur repertoire dédié
 
-> pour la génération des RTF : sachant que les modèles sont amenés a rester absolument fixes je récupère le code RTF du modèle, j'échappe tous les \ par \\ pour éviter à PHP de l'interpreter puis , dans ce code RTF, j'insere mes variables PHP (de sessions par exemple):
...morceau de code RTF...$_SESSION['nom']....code RTF....
Pour lécrire je fais un fwrite tout simple
 
Voilà si ça peut vous aider à avancer

Reply

Marsh Posté le 22-03-2006 à 17:35:59    

es tu obligé de faire remplir à l utilisateur un RTF?

Reply

Marsh Posté le 22-03-2006 à 17:44:15    

Je suis obligé de générer un document RTF.
En gros c'etait soit ça soit un DOC . Or le format DOC , pour le générer on peut s'accrocher.
En fait le but du RTF c'est justement l'envoi de ces courriers au client et dans ces courriers il y a toujours des images. Et ces courriers doivent respecter une charte graphique très stricte ce qui n'est pass réalisable avec du HTML
Voilà pourquoi le RTF ( si vous savez générer du DOC je prend parce que la jintègre une macro de sauvegarde et c'est réglé )

Message cité 1 fois
Message édité par TomZ le 22-03-2006 à 17:45:31
Reply

Marsh Posté le 22-03-2006 à 18:17:40    

> Et ces courriers doivent respecter une charte graphique très stricte ce qui n'est pass réalisable avec du HTML
 
Bof, si ça marche avec RTF, ça marche aussi avec du HTML, tu peut même exporter au fomat PDF si tu na finalement besoin que d imprimer les courriers.
 
> En fait le but du RTF c'est justement l'envoi de ces courriers au client et dans ces courriers il y a toujours des images.
 
Si l utilisateur n a que tu texte et aucune image à insérer dans le RTF, tu peut faire un formulaire que tu convertit après au format RTF.
 
Pour exemple, quand tu t inscrit au provider free.fr, tu donne toutes les infos par formulaire web, ensuite ils te font télécharger un PDF prérempli à imprimer et à renvoyer par voie postale.

Reply

Marsh Posté le 23-03-2006 à 08:24:26    

TomZ a écrit :

Je suis obligé de générer un document RTF.
En gros c'etait soit ça soit un DOC . Or le format DOC , pour le générer on peut s'accrocher.
En fait le but du RTF c'est justement l'envoi de ces courriers au client et dans ces courriers il y a toujours des images. Et ces courriers doivent respecter une charte graphique très stricte ce qui n'est pass réalisable avec du HTML
Voilà pourquoi le RTF ( si vous savez générer du DOC je prend parce que la jintègre une macro de sauvegarde et c'est réglé )


 
Si ton serveur est sous windows et qu'il y a Word d'installer dessus, tu utilises COM et c'est réglé.

Reply

Marsh Posté le 23-03-2006 à 08:24:26   

Reply

Marsh Posté le 23-03-2006 à 11:01:03    

A partir de COM on peut bien générer un nouveau document Word mais est-ce possible de sauvegarder les modifs d'un document existant lorsque celui-ci à été ouvert via une fenetre de navigateur ( ici IE) ?
 
On peut instancier Word avec COM mais y écrire des macro ? Si vou avez dejà expérimenter je suis prêt a vous ecouter :)

Reply

Marsh Posté le 23-03-2006 à 15:32:03    

j'ai pas expérimenté les macros.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed