18041 sujets
Questions générales et questions de débutants
Bonjour,
Tu trouveras comment faire sur ce site ! . Cela fonctionne, je l'ai testé en ligne.
Cordialement!
Tu trouveras comment faire sur ce site ! . Cela fonctionne, je l'ai testé en ligne.
Cordialement!
pixelweb a écrit :
Est ce que c'est pas dangereux comme méthode ?
Effectivement ! Je viens de tester à la main. On peut très facilement télécharger des fichiers sensibles, même s'ils se trouvent dans un dossier protégé par MDP.
Il doit cependant exister un moyen d'empêcher cela. Mais je n'ai pas encore trouvé! Avis à ceux que cela intéresse!
@jb_gfx > Il est certain que pour télécharger un .zip cela n'a jamais posé de problème.
Le script de ce site-ci devrait mieux répondre aux problèmes de sécurité évoqués par pixelweb.
Qu'en pensez-vous? Je l'ai testé et il fonctionne à condition de remplacer la ligne
@Arialia > il faut bien distinguer les fichiers qui ne font que s'ouvrir et ceux qui proposent leur ouverture et/ou leur téléchargement.
Modifié par lddsoft (05 Jun 2011 - 14:47)
Qu'en pensez-vous? Je l'ai testé et il fonctionne à condition de remplacer la ligne
header("location:".$chemin . $Fichier);
par readfile($chemin . $Fichier);
et d'apporter les modifications indiquées par l'auteur.@Arialia > il faut bien distinguer les fichiers qui ne font que s'ouvrir et ceux qui proposent leur ouverture et/ou leur téléchargement.
Modifié par lddsoft (05 Jun 2011 - 14:47)
nounou85 a écrit :
bonjour,
dans mon site j'ai une rubrique que j'ai appelé "bibliotheque", et je voudrais mettre dedont des document telechargeable, mais je n'ai pas la moindre idée comment je peux faire ça!!
quelqu'un peux m'aider svp? merci d'avance
uuuh ?! en html, c'est trop simple, voyons-voyons :
1. constituer une archive .zip ou .7z pour chaque fichier ou dossier
2. uploader sur votre site les trucs-machins à downloader
3. dans votre page en ligne, écrire les liens de téléchargements sous la forme :
<a href="dossiers/fichier-machin.zip">télécharger le fichier "machin"</a>
Non ?
Exemple : http://sentrais.fr/sonoriser/sonoriser1.htm#comment
Modifié par zebulin (06 Jun 2011 - 19:10)
Tony Monast a écrit :
Bonjour Zebulin,
Oui et non. Forcer l'utilisateur à dézipper chaque document peut devenir vite désagréable, surtout lorsqu'on veut simplement forcer le téléchargement d'un PDF ou d'une image.
En effet !
nounou85 évoque "des documents". Ceci ne constitue-t-il pas une imprécision qui nous égare ? Qu'entend-il par "documents" au juste ?
Eh oui toute la question est là ... si ce sont des documents qui se téléchargent par défaut , enfin qui demandent , la solution classique convient parfaitement sinon cela se discute suivant ce que l'on souhaite proposer au visiteur ...
et la solution proposée par lddsoft peut alors être utile , merci d'ailleurs pour le script
et la solution proposée par lddsoft peut alors être utile , merci d'ailleurs pour le script
bjr et merci à tous pour l'attention que vous avez donné pour mon sujet
en fait ce sont des dossiers contenant des fichiers pdf, et je voulais quand l'utilisateur ouvre un dossier, il aura la possibilité d'ouvrir et de telecharger les fichiers pdf qui sont dedont.
j'ai fait le code que vous m'avez donné, dejà les dossier ne s'affichent pas sous forme d'icone mais sous forme de liens et aussi quand je clique dessus pour acceder aux fichier qui sont dedont il m'affiche la page suivant:
Index of /espace_franchise/bibliotheque/PDFformuledanimation/indexformule
Name Last modified Size Description
--------------------------------------------------------------------------------
Parent Directory -
plaquette complete.pdf 01-Sep-2010 17:37 16M
--------------------------------------------------------------------------------
Apache/2.2.3 (Debian) mod_fcgid/2.3.5 mod_python/3.2.10 Python/2.4.4 mod_ssl/2.2.3 OpenSSL/0.9.8c mod_perl/2.0.2 Perl/v5.8.8 Server at www.monsite.fr Port 80
sachant que " plaquette complete.pdf " est le nom du fichier qui est à l'interieur du dissier que je viens d'ouvrir!!
svp qlq'un a une idée comment je peux resoudre ce prob!! merci d'avance
Modifié par nounou85 (08 Jun 2011 - 09:37)
en fait ce sont des dossiers contenant des fichiers pdf, et je voulais quand l'utilisateur ouvre un dossier, il aura la possibilité d'ouvrir et de telecharger les fichiers pdf qui sont dedont.
j'ai fait le code que vous m'avez donné, dejà les dossier ne s'affichent pas sous forme d'icone mais sous forme de liens et aussi quand je clique dessus pour acceder aux fichier qui sont dedont il m'affiche la page suivant:
Index of /espace_franchise/bibliotheque/PDFformuledanimation/indexformule
Name Last modified Size Description
--------------------------------------------------------------------------------
Parent Directory -
plaquette complete.pdf 01-Sep-2010 17:37 16M
--------------------------------------------------------------------------------
Apache/2.2.3 (Debian) mod_fcgid/2.3.5 mod_python/3.2.10 Python/2.4.4 mod_ssl/2.2.3 OpenSSL/0.9.8c mod_perl/2.0.2 Perl/v5.8.8 Server at www.monsite.fr Port 80
sachant que " plaquette complete.pdf " est le nom du fichier qui est à l'interieur du dissier que je viens d'ouvrir!!
svp qlq'un a une idée comment je peux resoudre ce prob!! merci d'avance
Modifié par nounou85 (08 Jun 2011 - 09:37)
merci pour vos reponses; mais je voudrais savoir pourquoi il m'affiche:
Apache/2.2.3 (Debian) mod_fcgid/2.3.5 mod_python/3.2.10 Python/2.4.4 mod_ssl/2.2.3 OpenSSL/0.9.8c mod_perl/2.0.2 Perl/v5.8.8 Server at www.monsite.fr Port 80
en fait quand tu m'a parlé de FTP , c'est à dire je vais mettre mes fichiers sur le serveur avec FTP c'est ça? ça je l'avais fait dejà!!
Modifié par nounou85 (08 Jun 2011 - 14:05)
Apache/2.2.3 (Debian) mod_fcgid/2.3.5 mod_python/3.2.10 Python/2.4.4 mod_ssl/2.2.3 OpenSSL/0.9.8c mod_perl/2.0.2 Perl/v5.8.8 Server at www.monsite.fr Port 80
en fait quand tu m'a parlé de FTP , c'est à dire je vais mettre mes fichiers sur le serveur avec FTP c'est ça? ça je l'avais fait dejà!!
Modifié par nounou85 (08 Jun 2011 - 14:05)
Je me doute bien que tu as uploadé tes fichiers par client FTP. Ce que je voulais dire c'est que tu peux permettre aux visiteurs de télécharger ces fichiers par FTP (une petite recherche sur Google s'impose là, car il faut assurer la sécurité du site).
Autrement, il reste la solution proposée par Arialia : tu crées sur ton site un dossier nommé par exemple "telechargements" dans le quel tu places les fichiers à télécharger en leur donnant des noms significatifs. Sur une page tu places le lien < a href="telechargmeents/">Page de téléchargements</ a>. Quand l'utilisateur va cliquer sur le lien, il verra tout le contenu du dossier "telechargements" et n'aura plus qu'à choisir ce qui l'intéresse.
En ce qui concerne le message d'Apache, je ne vois pas trop, c'est pas mon truc. Désolé.
Modifié par lddsoft (08 Jun 2011 - 15:34)
Autrement, il reste la solution proposée par Arialia : tu crées sur ton site un dossier nommé par exemple "telechargements" dans le quel tu places les fichiers à télécharger en leur donnant des noms significatifs. Sur une page tu places le lien < a href="telechargmeents/">Page de téléchargements</ a>. Quand l'utilisateur va cliquer sur le lien, il verra tout le contenu du dossier "telechargements" et n'aura plus qu'à choisir ce qui l'intéresse.
En ce qui concerne le message d'Apache, je ne vois pas trop, c'est pas mon truc. Désolé.
Modifié par lddsoft (08 Jun 2011 - 15:34)
Et si jamais tu ne peux pas lister les fichiers vérifie s'il y a la ligne suivante dans un des .htaccess du répertoire concerné ou de ses ascendants
si des restrictions de listage de répertoires ont été mises par cette option, tu peux la désactiver pour le répertoire concerné en mettant ces lignes dans le fichier .htaccess du répertoire :
Il est même possible de mettre une entête personnalisée en créant un fichier HEADER.html dans le répertoire cf doc apache http://httpd.apache.org/docs/2.3/fr/mod/mod_autoindex.html
Options -Indexes
si des restrictions de listage de répertoires ont été mises par cette option, tu peux la désactiver pour le répertoire concerné en mettant ces lignes dans le fichier .htaccess du répertoire :
Options +Indexes
IndexOptions +FancyIndexing
Il est même possible de mettre une entête personnalisée en créant un fichier HEADER.html dans le répertoire cf doc apache http://httpd.apache.org/docs/2.3/fr/mod/mod_autoindex.html
bnsr, merci pour vos reponses.
j'ai crée le fichier telecharger.php et aussi .htaccess mais j'arrive pas à trouver ou je peux inserer le code suivant :
dans mon script:
je vous remercie infiniment pour votre aide!!
Modifié par nounou85 (08 Jun 2011 - 22:17)
j'ai crée le fichier telecharger.php et aussi .htaccess mais j'arrive pas à trouver ou je peux inserer le code suivant :
href="telecharger.php?Fichier=exemple.zip&chemin=telechargement/">exemple</a>
dans mon script:
<?php
$dir_nom = 'bibliotheque'; // dossier listé (pour lister le répertoir courant : $dir_nom = '.' --> ('point')
$dir = opendir($dir_nom) or die('Erreur de listage : le répertoire n\'existe pas'); // on ouvre le contenu du dossier courant
$ifichier= array(); // on déclare le tableau contenant le nom des fichiers
$dossier= array(); // on déclare le tableau contenant le nom des dossiers
while($element = readdir($dir)) {
//if($element != '.' && $element != '..') {
if (!is_dir($dir_nom.'/'.$element)) {$fichier[] = $element;}
else {$dossier[] = $element;}
}
//}
closedir($dir);
$hide = Array('.','..');
if(!empty($dossier)) {
sort($dossier); // pour le tri croissant, rsort() pour le tri décroissant
echo "<b><h3>Voici les dossiers accessibles de la '$dir_nom' : \n\n</h3></b>";
echo "\t\t\n";
foreach($dossier as $lien){
if(in_array($lien, $hide))
continue;
echo "\t\t\t<li><a href=\"$dir_nom/$lien \">$lien</a></li>\n";
}
echo "\t\t";
}
?>
je vous remercie infiniment pour votre aide!!
Modifié par nounou85 (08 Jun 2011 - 22:17)
Comme dit dans un de tes nombreux autres sujets ouverts, le mieux serait sans doute de commencer par les bases du html avant de poursuivre vers des techniques plus avancées... Le but n'est pas de demander le code et faire un copier coller mais bien de le comprendre et pouvoir l'écrire toi même. Or ici je ne vois pas comment tu peux comprendre le php qui t'a été fourni si tu ne vois pas comment ajouter un lien dans une page html...