Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
449 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Transmission de headers

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Transmission de headers

n°1576211
warak
Posté le 18-06-2007 à 12:10:19  profilanswer
 

Salut tout le monde,
 
Je suis en train de créer une page web, sur laquelle on peut télécharger des sons mp3, cependant j'ai quelques soucis.
 
1) Sous Internet Explorer : Il peut se passer deux choses :
-soit j'ai l'invite de téléchargement qui me propose de télécharger la page et non le fichier.
-soit j'ai un texte crypté qui s'affiche dans le navigateur.
 
2)Sous Mozilla Firefox : L'invite de téléchargement fonctionne bien, mais c'est au moment du téléchargement que Mozilla affiche taille de fichier inconnue dans la fenêtre de téléchargement et celui ci ne télécharge pas le fichier en entier.
Peut-être ces problèmes sont ils liés?..
 
Si vous pouviez m'éclairer sur ces erreurs, cela m'aiderait énormément car cela fait 2 jours que je bloque...
 
Voici le lien pour que vous puissiez tester : http://slaneofficiel.free.fr/download.php?id=12
 
Et voici le code que j'ai écrit :  
 

Citation :


<?php
 
if(isset($_GET['id'])){
 
   $idcon=@mysql_connect('sql.free.fr','slaneofficiel','password');
   $idbase=mysql_select_db(slaneofficiel);
      if(!$idcon| !$idbase){
      echo "<script type=text/javascript>";
      echo "alert('Connexion impossible à la base')";
   }
 
   $id=$_GET['id'];
   $chemin='musiques/';
   $requete="SELECT titre FROM musiques WHERE id='$id'";
   $resultat=mysql_query($requete, $idcon);
   $num=mysql_num_rows($resultat);
      if($num == 1){
 
      $mus=mysql_fetch_row($resultat);
      $musique= $chemin.$mus[0];
      $taille= filesize("$musique" );
 
      header("Pragma: no-cache" );
      header("Expires: 0" );
      header("Cache-Control: no-cache, must-revalidate, post-check=0, pre-check=0" );
      header("Cache-Control: private",false);
      header("Content-Transfer-Encoding: binary" );
      header('Content-Type : audio/mpeg');
      header("Content-Length :".$taille);
      header("Content-Disposition: attachment; filename=\"".$mus[0]. "\";" );
      readfile("$musique" );
   }
   else{
      echo"Le fichier demandé n'a pas été trouvé";
   }
}
else{
   echo"Aucun fichier spécifié!";
}
 
?>


 
Pour info, l'hébergeur est Free; je ne connais pas les versions de PHP et MYSQL proposées par cet hébergeur...
 
PS : Le password n'est bien évidemment pas "password"^^
 
Merci par avance de votre aide


Message édité par warak le 22-06-2007 à 13:36:13
mood
Publicité
Posté le 18-06-2007 à 12:10:19  profilanswer
 

n°1576250
rufo
Pas me confondre avec Lycos!
Posté le 18-06-2007 à 13:54:01  profilanswer
 

ben fait un phpinfo() pour avoir les versions de php et mysql...

n°1576262
warak
Posté le 18-06-2007 à 14:00:37  profilanswer
 

rufo a écrit :

ben fait un phpinfo() pour avoir les versions de php et mysql...


 
J'avais complètement zappé cette fonction  :pt1cable:  
 
Alors,
 
Version de php : 4.4.3
Version de Mysql : 5.0.34
 
Merci

n°1576552
warak
Posté le 18-06-2007 à 22:43:49  profilanswer
 

Personne ne s'y connait en force-download et en transmission de header??

n°1578001
warak
Posté le 22-06-2007 à 13:36:51  profilanswer
 

Personne pour m'aider??

n°1578003
cgo2
Dum spiro spero
Posté le 22-06-2007 à 13:46:50  profilanswer
 

t'as des espaces en trop avant les ":" dans tes headers "content-type" et "content-length"


---------------
When it's from Finland it's good.  - Mon blog
n°1578027
grosbin
OR die;
Posté le 22-06-2007 à 14:33:48  profilanswer
 

warak a écrit :

Personne ne s'y connait en force-download et en transmission de header??


header("Content-disposition:filename=tonficher.gloubiglouba$$" );
header("Content-type:application/octetstream" );
 


---------------
Photos Panoramiques Montagnes Haute Savoie
n°1578385
warak
Posté le 23-06-2007 à 18:14:44  profilanswer
 

Salut grosbin et cgo2,
 
Je testerai ce soir et je vous dirai ce qu'il se passe,
 
Merci de votre réponse!

n°1578543
warak
Posté le 24-06-2007 à 16:58:42  profilanswer
 

Bon, sur Mozilla Firefox, il semblerait qu'il n'y ait plus de problème quant à la reconnaissance de la taille, mais il subsiste un problème, Mozilla ne télécharge seulement 1Mo sur 11Mo de la musique.. Est ce normal??
 
Sur Internet Explorer, l'invite de téléchargement me propose toujours de télécharger la page web et non le fichier... ??
 
Voici la partie header modifiée :
 
 
  header("Pragma: no-cache" );
  header("Expires: 0" );
  header("Cache-Control: no-cache, must-revalidate, post-check=0, pre-check=0" );  
  header("Cache-Control: private",false);
  header("Content-Transfer-Encoding: binary" );
  header("Content-Type:application/octetstream" );
  header("Content-Length:".$taille);
  header("Content-Disposition:filename=\"".$mus[0]. "\";" );  
  readfile("$musique" );
 
Merci de votre aide!  
 
 

n°1581116
warak
Posté le 30-06-2007 à 23:12:29  profilanswer
 

Up :D, Personne pour m'aider?


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Transmission de headers

 

Sujets relatifs
VOB AVI XVID DIVX Formats Headers et Footers ?transmission de donnees via le port serie
Transmission d'un argument entre deux fonctions[résolu] UTF-8 et headers (session_start)
[Axis][WSDL2Java] Modification des Headers SOAPproblème de transmission de variables
array_filter + transmission de variable dans une fonction callbackJtable Centrer le texte dans les "headers" !
Problème de transmission des donnéesPB headers
Plus de sujets relatifs à : Transmission de headers


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR