IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Force download *.rtf


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 18
    Points : 12
    Points
    12
    Par défaut Force download *.rtf
    Bonjour à tous.
    J'ai un petit soucis.
    Je génère un .rtf à la volé à grand coup de str_replace.
    Jusque là tous va bien.
    Le fichier s'enregistre bien et mon textes / tableau se place correctement.
    Sauf que, à la fin de mon script, je souhaite forcer le téléchargement.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $length = strlen($temp_file); 
    //lancement du téléchargement du fichier
    header("Content-type: application/rtf");
    header("Content-Length: ".$length); 
    header("Content-disposition: attachment; filename=\"".$temp_file."\";");
    Mais pour une raison inconnu lors de se "force download" cela me met mon index ( la partie html ) dans mon fichier donc le fichier devient corrompu.

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 266
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 266
    Points : 8 564
    Points
    8 564
    Billets dans le blog
    17
    Par défaut
    Sauf que, à la fin de mon script, je souhaite forcer le téléchargement.
    Qu'est-ce qu'il y a sur ta page avant le script collé ci-dessus ?

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 18
    Points : 12
    Points
    12
    Par défaut
    $fp = fopen ( $temp_file, 'w' );
    fputs($fp,$foutput);
    $fileLines=file($temp_file);
    $ligne_max = count($fileLines);
    fclose($fp);
    Ouverture du fichier, ajout de mon "texte", fermeture

    edit : redification il me met mon index au complet sans télécharger mon fichier

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    {\rtf1\ansi\ansicpg1252\deff0\deflang1036\deflangfe1036\deftab708{\fonttbl{\f0\fswiss\fcharset0 Arial;}{\f1\fswiss\fprq2\fcharset0 Calibri;}}
    {\colortbl ;\red255\green255\blue255;\red255\green0\blue0;\red0\green0\blue0;}
    {\*\generator Msftedit 5.41.15.1515;}\viewkind4\uc1\pard\li1136\ri260\sa200\sl276\slmult1\qr\f0\fs20{\pict\wmetafile8\picwgoal2265\pichgoal434
    Petit morceau de "code" du rtf présent sur le serveur.

    Petit morceau de ce que contient le fichier que je télécharge:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <html>
    	<head>
    		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    		<script  type="text/javascript" src="./inc/script.js"></script>
    		<title></title>
    		<link rel="stylesheet" type="text/css" href="./inc/my_css.css" />

  4. #4
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 266
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 266
    Points : 8 564
    Points
    8 564
    Billets dans le blog
    17
    Par défaut
    $fp = fopen ( $temp_file, 'w' );
    fputs($fp,$foutput);
    ...
    Et encore avant ? N'y aurait-il pas ta page HTML ?

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 18
    Points : 12
    Points
    12
    Par défaut
    Non c'est une page à par....hum...
    En faite si je suis bête comme c'est un include elle est bien présente ma page html.

    Je dois la mettre "à par" ?

  6. #6
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 266
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 266
    Points : 8 564
    Points
    8 564
    Billets dans le blog
    17
    Par défaut
    Voui.

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 18
    Points : 12
    Points
    12
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php  
          if (isset($_GET['page']))
          { 
            $temp_file=$_GET['page'];
            $length = strlen($temp_file); 
            header("Content-type: application/rtf");
            header("Content-Length: ".$length); 
            header("Content-disposition: attachment; filename=\"".$temp_file."\";");
            copy($temp_file, "./facture/".$temp_file) ;
            unlink($temp_file);          
          }
     
    ?>
    J'ai crée une autre page seul ou je passe le nom en parametre et ... rien
    Le fichier fais 0 et vide.

  8. #8
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 266
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 266
    Points : 8 564
    Points
    8 564
    Billets dans le blog
    17
    Par défaut
    Nul part tu n'envoies les données au client.

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 18
    Points : 12
    Points
    12
    Par défaut
    La pour le coup je comprend pas
    edit:
    Done

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
          if (isset($_GET['page']))
          { 
            $temp_file=$_GET['page'];
            $length = strlen($temp_file); 
            header("Content-type: application/rtf");
            //header("Content-Length: ".$length); 
            header("Content-disposition: attachment; filename=\"".basename($temp_file)."\";");
            readfile("$temp_file");
            copy($temp_file, "./facture/".$temp_file) ;
            unlink($temp_file);          
          }
    Merci pour ton aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Streaming avec un "Force Download"
    Par Ricket008 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 04/05/2012, 14h43
  2. Force download - fichier incomplet
    Par Lqncer89 dans le forum Langage
    Réponses: 0
    Dernier message: 31/10/2011, 19h15
  3. Force download et fichier corrompu
    Par Koudja dans le forum Langage
    Réponses: 2
    Dernier message: 23/02/2011, 13h16
  4. Problème avec un script de force download.
    Par Jaack dans le forum Langage
    Réponses: 21
    Dernier message: 10/10/2010, 18h16
  5. [Upload] Problème avec Force download
    Par bannik dans le forum Langage
    Réponses: 8
    Dernier message: 30/12/2005, 13h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo