Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
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 03/09/2011, 13h05   #1
Responsable Web sémantique

 
Avatar de snake264
 
Homme Julien Plu
Étudiant
Inscription : novembre 2006
Messages : 2 127
Détails du profil
Informations personnelles :
Nom : Homme Julien Plu
Âge : 24
Localisation : France, Hérault (Languedoc Roussillon)

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2006
Messages : 2 127
Points : 6 820
Points : 6 820
Envoyer un message via MSN à snake264 Envoyer un message via Skype™ à snake264
Par défaut Impossible de télécharger un fichier zip



J'ai fait un script PHP qui upload un fichier XML ou une archive ZIP, ensuite lance une commande système sur un fichier jar et ce fichier jar produit un zip. Jusque là tout fonctionne bien.

Ensuite je cherche à télécharger ce zip produit par mon jar mais mon script affiche le code binaire de mon zip dans ma page au lieu de télécharger le zip.

Voici mon code :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?php 
    $upload = FALSE;
 
    if (isset ($_FILES['fileToUpload']) && ($_FILES['fileToUpload']['type'] == "text/xml" || $_FILES['fileToUpload']['type'] == "application/zip")) {
        $destination_path = getcwd () . DIRECTORY_SEPARATOR . $_FILES['fileToUpload']['name'];
 
        if (move_uploaded_file ($_FILES['fileToUpload']['tmp_name'], $destination_path)) {
            echo "Upload finished, now translation is in progress<br/>";
            $upload = TRUE;
        }
 
        if ($upload) {
            $commande = "java -jar NeptuneToRDF.jar " . $destination_path;
            exec ($commande, $output);
            if (!empty ($output)) {
                echo "There is a problem with the Neptune file";
            }
            else {
                echo "Translation is ok";
                unlink($destination_path);
 
                $rdfFile = basename(substr ($destination_path, 0, -4) . "_RDF.zip");
 
                header("Content-disposition: attachment; filename=$rdfFile\n");
                header("Content-Type: x/y\n");
                readfile ($rdfFile); 
            }
        }
    }
    else {
        echo "Thanks to choose a neptune file";
    }
 
?>
J'ai aussi essayé le content type "application/zip" et ça donne la même chose. J'ai aussi essayé un "echo" à la place d'un "readfile" et ça m'affiche juste la valeur de "$rdfFile".

Une idée de ce que j'aurai pu mal faire ?

__________________
Vous pouvez aller voir mes tutos et mes critiques: ici
Ainsi que mon: blog

Vous souhaitez participer à la rubrique Web sémantique ? Contactez-moi par MP.

Je ne répondrai à aucune question technique par MP les forums sont présents pour ça

c'est très intelligent un ordinateur: "Keyboard ERROR. No keyboard Connected. Press any key to continue..."
snake264 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2011, 13h58   #2
Membre Expert
 
Avatar de Djakisback
 
Inscription : février 2005
Messages : 1 791
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 1 791
Points : 1 681
Points : 1 681
Salut,
tu peux modifier le content-disposition et la passer en "inline" ou bien modifier la gestion du cache en ajoutant une ligne dans le header :
Code :
header("Cache-Control: no-cache, must-revalidate");
personnellement j'utilise la première solution.
A+
__________________
Vive les roues en pierre
Djakisback est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2011, 15h34   #3
Responsable Web sémantique

 
Avatar de snake264
 
Homme Julien Plu
Étudiant
Inscription : novembre 2006
Messages : 2 127
Détails du profil
Informations personnelles :
Nom : Homme Julien Plu
Âge : 24
Localisation : France, Hérault (Languedoc Roussillon)

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2006
Messages : 2 127
Points : 6 820
Points : 6 820
Envoyer un message via MSN à snake264 Envoyer un message via Skype™ à snake264
L'une ou l'autre des deux solutions ne donnent rien
__________________
Vous pouvez aller voir mes tutos et mes critiques: ici
Ainsi que mon: blog

Vous souhaitez participer à la rubrique Web sémantique ? Contactez-moi par MP.

Je ne répondrai à aucune question technique par MP les forums sont présents pour ça

c'est très intelligent un ordinateur: "Keyboard ERROR. No keyboard Connected. Press any key to continue..."
snake264 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2011, 15h38   #4
Rédacteur/Modérateur
 
Avatar de Thes32
 
Homme
Développeur Web
Inscription : décembre 2006
Messages : 2 335
Détails du profil
Informations personnelles :
Sexe : Homme

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : décembre 2006
Messages : 2 335
Points : 3 774
Points : 3 774
salut,

peux tu enlever le newline ("\n") aux appels de la fonction header ? tes echos ne devraient pas venir avant les headers à moins d'avoir modifier le comportement du output buffering.
__________________
Développeur | Zend Certified Engineer

Étapes Pour mieux se servir du forum:
1. Commencez par lire les cours et tutoriels ;
2. Faites une recherche;
3. Faites un post si rien trouvé dans les deux étapes précédentes en respectant les règles;

Nix>_Rien n'est plus pratique que la théorie
Thes32 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2011, 15h53   #5
Responsable Web sémantique

 
Avatar de snake264
 
Homme Julien Plu
Étudiant
Inscription : novembre 2006
Messages : 2 127
Détails du profil
Informations personnelles :
Nom : Homme Julien Plu
Âge : 24
Localisation : France, Hérault (Languedoc Roussillon)

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2006
Messages : 2 127
Points : 6 820
Points : 6 820
Envoyer un message via MSN à snake264 Envoyer un message via Skype™ à snake264
Même si j'enlève les "\n" et tous les "echo" ça donne la même chose. J'ai que du binaire qui s'affiche :

Citation:
PKC}#?tatrobus-corrige/PKPKC}#?4tatrobus-corrige /C_CHOUETTE_transporteur_2_27383.rdf͘A��@���Ľ�a f��Ɛح�i�ݠ{&Tg-)��1�ܽ�V�hqa@�&��Ǽo潱�S��GM���U}/Z.էH �J� �M�S��lj16 J����.����q��n.Wn��Kn)�,RGQ��j��sw��؄ѯK˲<��3���ώ=� �Y:hU!�l6�Ƙ�a�� cL����h�ԍ��pw��NlW� u��b��_tu��wi�FeP9�4A0K~s�`����$�o�0 co�(���E�"�ӏ��\��Y �'|Z��WE���z�ǻ�y����ҭ�c݇��g��p�&Nǧx�����s��Μ;Cw��S
__________________
Vous pouvez aller voir mes tutos et mes critiques: ici
Ainsi que mon: blog

Vous souhaitez participer à la rubrique Web sémantique ? Contactez-moi par MP.

Je ne répondrai à aucune question technique par MP les forums sont présents pour ça

c'est très intelligent un ordinateur: "Keyboard ERROR. No keyboard Connected. Press any key to continue..."
snake264 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2011, 17h20   #6
Responsable Qt & Web sémantique

 
Avatar de dourouc05
 
Homme Thibaut Cuvelier
Étudiant
Inscription : août 2008
Messages : 16 308
Détails du profil
Informations personnelles :
Nom : Homme Thibaut Cuvelier
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : août 2008
Messages : 16 308
Points : 49 909
Points : 49 909
Envoyer un message via MSN à dourouc05 Envoyer un message via Yahoo à dourouc05
Vu que tu ne fais qu'afficher le contenu du ZIP dans ton script, il est peut-être possible de faire un simple header('Location: .zip');.
__________________
Le troisième défi Qt !

Vous souhaitez participer aux rubriques Qt ou PyQt/PySide (tutoriels, FAQ, traductions, sources) ? Contactez-moi par MP.

Qt : La FAQ : 200 QR
symfony : sfDoctrineGuard

Pas de question d'ordre technique par MP !
dourouc05 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2011, 17h26   #7
Modérateur
 
Inscription : septembre 2010
Messages : 7 131
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 131
Points : 8 491
Points : 8 491
Citation:
Content-Type: x/y
x/y ?
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2011, 18h24   #8
Responsable Web sémantique

 
Avatar de snake264
 
Homme Julien Plu
Étudiant
Inscription : novembre 2006
Messages : 2 127
Détails du profil
Informations personnelles :
Nom : Homme Julien Plu
Âge : 24
Localisation : France, Hérault (Languedoc Roussillon)

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2006
Messages : 2 127
Points : 6 820
Points : 6 820
Envoyer un message via MSN à snake264 Envoyer un message via Skype™ à snake264
Citation:
Envoyé par stealth35 Voir le message
x/y ?
Oui si on met ça le navigateur est sensé reconnaître le type MIME avec l'extension du fichier.

@Thibaut : ça change rien
__________________
Vous pouvez aller voir mes tutos et mes critiques: ici
Ainsi que mon: blog

Vous souhaitez participer à la rubrique Web sémantique ? Contactez-moi par MP.

Je ne répondrai à aucune question technique par MP les forums sont présents pour ça

c'est très intelligent un ordinateur: "Keyboard ERROR. No keyboard Connected. Press any key to continue..."
snake264 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2011, 18h29   #9
Modérateur
 
Inscription : septembre 2010
Messages : 7 131
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 131
Points : 8 491
Points : 8 491
Citation:
Envoyé par snake264 Voir le message
sensé
met le MIME correct, comme ça tu seras sûr au moins
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2011, 18h29   #10
Responsable Web sémantique

 
Avatar de snake264
 
Homme Julien Plu
Étudiant
Inscription : novembre 2006
Messages : 2 127
Détails du profil
Informations personnelles :
Nom : Homme Julien Plu
Âge : 24
Localisation : France, Hérault (Languedoc Roussillon)

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2006
Messages : 2 127
Points : 6 820
Points : 6 820
Envoyer un message via MSN à snake264 Envoyer un message via Skype™ à snake264
Ok, mais il n'y a aucune différence si je le spécifie ou non
__________________
Vous pouvez aller voir mes tutos et mes critiques: ici
Ainsi que mon: blog

Vous souhaitez participer à la rubrique Web sémantique ? Contactez-moi par MP.

Je ne répondrai à aucune question technique par MP les forums sont présents pour ça

c'est très intelligent un ordinateur: "Keyboard ERROR. No keyboard Connected. Press any key to continue..."
snake264 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2011, 18h33   #11
Modérateur
 
Inscription : septembre 2010
Messages : 7 131
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 131
Points : 8 491
Points : 8 491
Citation:
Envoyé par snake264 Voir le message
Ok, mais il n'y a aucune différence si je le spécifie ou non
met le quand même, fait un exit après ton readfile, les fins d’entêtes c'est \r\n pas \n, met un Content-Type: application/force-download au pire
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2011, 21h03   #12
Responsable Web sémantique

 
Avatar de snake264
 
Homme Julien Plu
Étudiant
Inscription : novembre 2006
Messages : 2 127
Détails du profil
Informations personnelles :
Nom : Homme Julien Plu
Âge : 24
Localisation : France, Hérault (Languedoc Roussillon)

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2006
Messages : 2 127
Points : 6 820
Points : 6 820
Envoyer un message via MSN à snake264 Envoyer un message via Skype™ à snake264
Cela ne change toujours rien
__________________
Vous pouvez aller voir mes tutos et mes critiques: ici
Ainsi que mon: blog

Vous souhaitez participer à la rubrique Web sémantique ? Contactez-moi par MP.

Je ne répondrai à aucune question technique par MP les forums sont présents pour ça

c'est très intelligent un ordinateur: "Keyboard ERROR. No keyboard Connected. Press any key to continue..."
snake264 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h37.


 
 
 
 
Partenaires

Hébergement Web