Précédent   Forum des professionnels en informatique > PHP > Langage > Syntaxe
Syntaxe Forum d'entraide sur la syntaxe de PHP et la POO. Avant de poster -> FAQ syntaxe, Cours d'initiation et cours de POO
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 06/05/2011, 09h16   #1
Membre habitué
 
Inscription : mai 2004
Messages : 499
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 499
Points : 149
Points : 149
Par défaut Lecture de fichier depuis répertoire "Temp"

Bonjour,

Dans un script, j'affiche un document RTF avec l'application par défaut installée sur la machine cliente. Je voudrais que ce document soit ouvert en lecture-écriture et, lors de l'enregistrement (CTRL + S) de celui-ci après d'éventuelles modifications par l'utilisateur, le répertoire d'enregistrement par défaut soit celui d'origine, donc que les modifications soient directement enregistrées dans le fichier original.

Pour ce faire, j'utilise une méthode de mon objet de type CLettre que voici :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public function affLettre()
   {
    if($file = fopen($this->id . "_temp.rtf", "w+"))
     {
      if(fwrite($file, $this->contenu))
       {
        header("Content-type: application/force-download" );
        header("Content-disposition: attachment; filename=" . $this->id . "_temp.rtf" . ";");
        header("Content-Description: File Transfert");
        header("Content-Transfer-Encoding: binary");
        header("Pragma: no-cache");
        header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0");
        header("Expires: 0");
        header("Content-Length: " . filesize($this->id . "_temp.rtf"));
        flush();
 
        //envoi du fichier proprement dit
        readfile($this->id . "_temp.rtf", "w+"); 
       }         
     }
   }
Le fichier est bien affiché à l'écran via l'application adéquate, mais lors de l'enregistrement, le répertoire proposé est le "Temp" (comme si le fichier était ouvert en lecture seule) au lieu du répertoire d'origine dans lequel j'ai pourtant les droits en écriture est lecture. D'ailleurs, si je double-clique directement sur le document dans le répertoire d'origine, que j'y apporte des modifications et que je l'enregistre (CTRL + S), il m'enregistre bien les modification dans le document original.

Comme je veux faire tourner un service pour faire un post-traitement sur les fichiers se trouvant dans ce répertoire (enregistrement des modifications), cela est très problématique.

Quelqu'un aurait une idée?

Merci d'avance.
dubitoph est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2011, 10h33   #2
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Le client ne peut pas écrire sur le serveur.
Le document est toujours téléchargé et ouvert localement sur la machine du client.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2011, 10h48   #3
Membre habitué
 
Inscription : mai 2004
Messages : 499
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 499
Points : 149
Points : 149
OK, merci pour ta réponse
dubitoph 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 09h02.


 
 
 
 
Partenaires

Hébergement Web