Votre question

PHP - Problème variable session

Tags :
  • Script
  • Programmation
Dernière réponse : dans Programmation
26 Novembre 2007 20:50:16

Salut,

Voila j'ai tenté de faire un script d'upload de vidéo pour moi et mes proches.
Mais lorsque qu'on arrive sur la page qui récapitule l'url du fichier --> problème ! En effet les vidéos s'ouvrent directos dans mon lecteur vidéo au lieu de la proposer à télécharger.
J'ai donc opté pour un script pour forcer le téléchargement de la vidéo :
http://php.developpez.com/faq/?page=fichiers#fichiers_forcedownload
  1. <?php
  2.  
  3. //
  4. // Constantes de configuration
  5. //
  6.  
  7. define('CFG_SYSTEM_FILENAME', 'fichier.ext'); // Nom du fichier pour le système
  8. define('CFG_SEND_FILENAME', CFG_SYSTEM_FILENAME); // Nom du ficher pour le navigateur
  9.  
  10. //
  11. // Constantes à ne pas modifier
  12. //
  13. define('CFG_FILESIZE', filesize(CFG_SYSTEM_FILENAME));
  14. define('CFG_FILE_MD5', md5_file(CFG_SYSTEM_FILENAME));
  15. define('CFG_DATE_FORMAT', 'D, d M Y H:i:s');
  16.  
  17. //
  18. // Quelques éléments nécessaires
  19. //
  20. error_reporting(0);
  21. ini_set('zlib.output_compression', 0);
  22.  
  23.  
  24. /*
  25. * Les en têtes nécessaires
  26. */
  27.  
  28. //
  29. // Gestion du cache
  30. //
  31. header('Pragma: public');
  32. header('Last-Modified: '.gmdate(CFG_DATE_FORMAT).' GMT');
  33. header('Cache-Control: must-revalidate, pre-check=0, post-check=0, max-age=0');
  34.  
  35. //
  36. // Informations sur le contenu à envoyer
  37. //
  38. header('Content-Tranfer-Encoding: none');
  39. header('Content-Length: '.CFG_FILESIZE);
  40. header('Content-MD5: '.base64_encode(CFG_FILE_MD5));
  41. header('Content-Type: application/octetstream; name="'.CFG_SEND_FILENAME.'"');
  42. header('Content-Disposition: attachement; filename="'.CFG_SEND_FILENAME.'"');
  43.  
  44. //
  45. // Informations sur la réponse HTTP elle-même
  46. //
  47. header('Date: '.gmdate(CFG_DATE_FORMAT, time()).' GMT');
  48. header('Expires: '.gmdate(CFG_DATE_FORMAT, time()+1).' GMT');
  49. header('Last-Modified: '.gmdate(CFG_DATE_FORMAT, time()).' GMT');
  50.  
  51.  
  52. /*
  53. * Envoi du fichier
  54. */
  55.  
  56. readfile(CFG_SYSTEM_FILENAME);
  57.  
  58. ?>


Mais le problème est lors de la spécification du nom du fichier, qui est chez moi la variable de session : $_SESSION['fichier'] + son extension avi pour ce cas, et je n'arrive pas à formuler ça dans le script.. quelqu'un pourrait m'aider en me renvoyant le script.
Merci d'avance ! :)  :) 

Autres pages sur : php probleme variable session

a c 232 L Programmation
30 Novembre 2007 14:38:39

Salut,

En remplaçant :
define('CFG_SYSTEM_FILENAME', 'fichier.ext');

par

define('CFG_SYSTEM_FILENAME', $_SESSION['fichier'].'.avi');
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS