Besoin de créer des boutons de téléchargement pour le site web php

  • fishdish
  • Born
  • Born
  • No Avatar
  • Inscription: Jan 31, 2009
  • Messages: 1
  • Status: Offline

Message Janvier 31st, 2009, 2:54 pm

Bonjour, Je suis un web designer autodidacte. Je utiliser Yahoo Sitebuilder. J'ai créer un site web pour une petite église qui a la pasteurs sermons en ligne et disponible pour téléchargement.

Jusqu'à ce point, j'ai simplement donné des instructions dans le clic droit et enregistrer. Toutefois, l'église et me tiens à rendre le site plus d'allure professionnelle.

Télécharger les boutons sont une de ces petites choses qui rendent un site voir le meilleur et pour l'ordinateur d'analphabètes, moins effrayant.

J'ai trouvé un vieux poste de retour en 2007 d'un script php pour le but que je veux. Pour être en mesure d'avoir le visiteur clique sur un bouton Télécharger et être invité à ouvrir ou à enregistrer.

Cependant, je me manque quelque chose. Ne pas mettre le fichier php au bon endroit, ou quelque chose. Je me sens comme si je manque un peu présumé de l'information. Quelqu'un pourrait-il s'il vous plaît aider cette frustration designer? Je vous remercie.
  • Anonymous
  • Bot
  • No Avatar
  • Inscription: 25 Feb 2008
  • Messages: ?
  • Loc: Ozzuland
  • Status: Online

Message Janvier 31st, 2009, 2:54 pm

  • Bigwebmaster
  • Site Admin
  • Site Admin
  • Avatar de l’utilisateur
  • Inscription: Déc 20, 2002
  • Messages: 8934
  • Loc: Seattle, WA & Phoenix, AZ
  • Status: Offline

Message Janvier 31st, 2009, 6:43 pm

Vous devez modifier le type de contenu que vous essayez de leur donner. Par exemple ici est un petit script php qui serait forcer le téléchargement d'un fichier:

Code: [ Select ]
<?php

// force to download a file
$file = "http://www.yourdomain.com/downloads/".$_GET['file']."";

header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");

header("Content-Type: application/force-download");
header( "Content-Disposition: attachment; filename=".basename($file));

header( "Content-Description: File Transfer");
@readfile($file);

?>
  1. <?php
  2. // force to download a file
  3. $file = "http://www.yourdomain.com/downloads/".$_GET['file']."";
  4. header("Pragma: public");
  5. header("Expires: 0");
  6. header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
  7. header("Content-Type: application/force-download");
  8. header( "Content-Disposition: attachment; filename=".basename($file));
  9. header( "Content-Description: File Transfer");
  10. @readfile($file);
  11. ?>


Aussi voici un lien qui montre un exemple de script PHP qui pourraient mieux fonctionner:

http://elouai.com/force-download.php

Espérons que tu monte sur la bonne voie.
Ozzu Hosting - Want your website on a fast server like Ozzu?
  • Songcat
  • Born
  • Born
  • No Avatar
  • Inscription: Oct 30, 2011
  • Messages: 3
  • Status: Offline

Message Octobre 30th, 2011, 11:06 am

Salut
Im un débutant total de PHP. Je serais donc reconnaissant si il y a de commentaires sur les lignes de ce script PHP. Particulièrement pour les définitions et clarifications des champs.
Im essayer de créer un téléchargement d'un fichier nommé myfile.epub. Le type mime est application/xhtml + xml.
Mes questions, avec les numéros de ligne :
04 - explicitement expliquer « file ». Cela signifie le fichier à télécharger, ou le fichier PHP ? (Désolé, que je vous ai dit que je suis un newbie.)
06 - ce que cela ne ?
11 - quoi .basename ? Quel est le fichier $? Pouvez-vous donner un exemple ?
En outre, quel est le sens de "vous devez changer le type de contenu...« Quelle est la définition exacte du « content-type? »
Merci beaucoup pour l'aide.
  • Bigwebmaster
  • Site Admin
  • Site Admin
  • Avatar de l’utilisateur
  • Inscription: Déc 20, 2002
  • Messages: 8934
  • Loc: Seattle, WA & Phoenix, AZ
  • Status: Offline

Message Octobre 30th, 2011, 1:08 pm

Pour la ligne #4 qui dit :

PHP Code: [ Select ]
$_GET['file']


C'est fondamentalement juste dire grab variable GET. Ce que cela signifie, c'est si votre lien dans votre navigateur dit quelque chose comme :

http://www.yourdomain.com/download.php?file=somefilename.mpg

Puis download.php serait le script lui-même et tout ce qui suit le point d'interrogation obtient stocké dans la variable de « fichier » GET. Remarquez donjon dans devrait désinfecter réellement toute entrée au cas où quelqu'un tente d'entrer quelque chose qui pourrait causer des problèmes pour vous. Look up PHP d'entrée désinfecter et vous devriez trouver de nombreux articles sur lui comme son un sujet énorme. Vous n'avez même pas à utiliser la variable GET si vous voulez coder juste quelques fichiers. Cette variable a été essentiellement supposé pour vous permettre de l'utiliser pour une variété de noms de fichier différent.

Pour la ligne #6 :

Code: [ Select ]
Pragma: public


Vous pouvez probablement obtenir sans elle. Elle est reliée à l'en-tête cache-control et semble pour corriger les erreurs dans IE8 et moins où il parfois vous obtiendrez « Internet Explorer n'était pas capable d'ouvrir ce site Internet ».

Pour la dernière ligne, #11 :

PHP Code: [ Select ]
header( "Content-Disposition: attachment; filename=".basename($file));


La. devant le nom de base en PHP signifie à ajouter à la chaîne. Donc dans ce cas vous aurez le String :

« content-Disposition : attachement ; filename = "

et puis annexée à c'est :

basename($file)

Que la fonction PHP appelée basename retourne le composant rampante de nom de chemin d'accès. En d'autres termes, donné une chaîne contenant le chemin vers un fichier ou un répertoire, cette fonction retournera le composant nom rampante. Donc dans ce cas seulement le fichier nommer lui-même, pas toute information de chemin d'accès. Alors au lieu de :

/Home/Path/to/Your/filename.mpg

Qu'il ne reviendrait pas :

filename.mpg
Ozzu Hosting - Want your website on a fast server like Ozzu?
  • Songcat
  • Born
  • Born
  • No Avatar
  • Inscription: Oct 30, 2011
  • Messages: 3
  • Status: Offline

Message Octobre 30th, 2011, 5:17 pm

Oh Yeah ! C'était super.
Très cool. Merci
  • Songcat
  • Born
  • Born
  • No Avatar
  • Inscription: Oct 30, 2011
  • Messages: 3
  • Status: Offline

Message Octobre 30th, 2011, 5:47 pm

Eh bien, il fonctionne très bien sur mon pc avec Google Chrome, mais ne fonctionne pas sur mon téléphone Android. J'obtiens une erreur de téléchargement indiquant que le contenu n'est pas supporté. Je suppose que le serveur n'a pas de support php.
  • kevinnguyen
  • Born
  • Born
  • No Avatar
  • Inscription: Mai 31, 2012
  • Messages: 1
  • Status: Offline

Message Mai 31st, 2012, 9:26 pm

Merci, j'ai récemment été recherche pour info sur ce sujet pour les âges et yours est le plus grand j'ai découvert jusqu'à maintenant. Mais, qu'en est-il de la conclusion ? Vous êtes sûr de la source ?
  • Zealous
  • Guru
  • Guru
  • Avatar de l’utilisateur
  • Inscription: Avr 15, 2011
  • Messages: 1201
  • Loc: Sydney
  • Status: Offline

Message Mai 31st, 2012, 10:40 pm

Songcat a écrit:
De plus, il fonctionne très bien sur mon pc avec Google Chrome, mais ne fonctionne pas sur mon téléphone Android. J'obtiens une erreur de téléchargement indiquant que le contenu n'est pas supporté. Je suppose que le serveur n'a pas de support php.


Je suppose que votre téléphone ne comprend pas le protocole internet standard, il peut besoin de code différent pour utilisation mobile ? Faire des recherches

kevinnguyen a écrit:
Merci, j'ai récemment été recherche pour info sur ce sujet pour les âges et yours est le plus grand j'ai découvert jusqu'à maintenant. Mais, qu'en est-il de la conclusion ? Vous êtes sûr de la source ?


C'est Big Web votre demandant trop il y a une raison qu'il est le lololol Big Web Master ! Vous êtes sûr de vous avez encore testé ou Apprenez à l'appliquer.
  • Ruttah
  • Newbie
  • Newbie
  • Avatar de l’utilisateur
  • Inscription: Mai 29, 2012
  • Messages: 9
  • Status: Offline

Message Juin 10th, 2012, 8:50 pm

Utilisé votre code et ajouter un peu à la fin d'un autre code... Quelqu'un essayait de m'aider à obtenir un lien de téléchargement pour télécharger des mp3 et cela a fonctionné :) Merci





Code: [ Select ]
<?php
$file = "C:\xampp\htdocs\JosueWebsite\Mp3".$_GET['mp3']."";
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/force-download");
header( "Content-Disposition: attachment; filename=GucciWild.mp3".basename($mp3));
header( "Content-Description: File Transfer");
@readfile($file) OR die("<html><body OnLoad='javascript: alert('Unable to read file!');history.back();' bgcolor='#F0F0F0'>Unable to read file!</body></html>");
exit;

?>
  1. <?php
  2. $file = "C:\xampp\htdocs\JosueWebsite\Mp3".$_GET['mp3']."";
  3. header("Pragma: public");
  4. header("Expires: 0");
  5. header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
  6. header("Content-Type: application/force-download");
  7. header( "Content-Disposition: attachment; filename=GucciWild.mp3".basename($mp3));
  8. header( "Content-Description: File Transfer");
  9. @readfile($file) OR die("<html><body OnLoad='javascript: alert('Unable to read file!');history.back();' bgcolor='#F0F0F0'>Unable to read file!</body></html>");
  10. exit;
  11. ?>

Afficher de l'information

  • Total des messages de ce sujet: 9 messages
  • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 100 invités
  • Vous ne pouvez pas poster de nouveaux sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas éditer vos messages
  • Vous ne pouvez pas supprimer vos messages
  • Vous ne pouvez pas joindre des fichiers
 
 

© 2011 Unmelted, LLC. Ozzu® est une marque déposée de Unmelted, LLC