Aller au contenu

télécharger une photo à partir de sa vignette ?


tolunq

Messages recommandés

je suis en train de mettre des photos perso sur un compte free.

pour éviter que l'affichage soit trop long (elles sont en 5 mega),

elles s'affichent en vignettes.

comment faire sous dreamweaver (en html), pour que lorsqu'on clique sur une vignette, on puisse télécharger la vrai photo (celle qui fait 5 mega) ?

toutes ces vrais photos sont sur ce compte free.

merci encore pour l'aide

Lien vers le commentaire
Partager sur d’autres sites

merci pour la réponse.

le pb est que quand on clique sur le lien de téléchargement, l'image s'affiche à l'écran. si on veut vraiment télécharger la photo, on est obligé de faire un clic droit souris puis enregistrer sous ... là ça marche.

Lien vers le commentaire
Partager sur d’autres sites

merci pour la réponse.

le pb est que quand on clique sur le lien de téléchargement, l'image s'affiche à l'écran. si on veut vraiment télécharger la photo, on est obligé de faire un clic droit souris puis enregistrer sous ... là ça marche.

oups, j'avais oublié de signaler qu'il fallait clic droit pour la recuperer...

peut-etre avec un javascript....

mais vu que le format de ton fichier est une image, il va forcement vouloir l'afficher...

à moins de mettre un zip de ton image, là ca fonctionnera...

Lien vers le commentaire
Partager sur d’autres sites

Tu peux faire cela tres simplement a l'aide d'un script PHP.

Fichier : dl.php

<?
if (!isset($_GET["dl"]) || !file_exists($_GET["dl"]))
{?>
<html>
<body>
Operation non permise !
</body>
</html>
<?}
else
{
ob_clean();
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("content-type: application/octet-stream");
header("Content-Length: ".filesize($_GET["dl"]));
header("Content-Disposition: attachment; filename=".str_replace(" " , "_" , basename($_GET["dl"])));
flush();
readfile($_GET["dl"]);
}
?>

Pour que cela fonctionne tu devras mettre en lien sur tes vignettes le script de cette maniere :

<A HREF="dl.php?dl=ton_image_de_plusieurs_Mo.jpg">
<IMG src="ta vignette" />
</A>

Si le fichier a telecharger (ici une image mais ca peut etre tout autre chose) n'est pas specifie ou designe un fichier qui n'existe pas une page d'erreur s'affichera (c'est le fameux "Operation non permise" qu'il serait bienvenu de configurer a tes gouts) sinon le telechargement (et non pas l'affichage) de l'image debutera !

Attention toutefois !!!!!!!!! ... je te donne un script PHP volontairement simpliste pour ne pas te noyer avec des lignes superflues. A toi de comprendre comment il fonctionne ... et surtout a toi de l'adapter a tes besoin car dans l'etat actuel il constitue un trou de securite enorme etant donne que l'on pourrait dans l'absolu telecharger n'importe quel fichier (meme un fichier source php ou .htaccess) en passant le chemin complet en parametre du script ! Pour remedier a ca ... une solution simple consisterait a tester si le nom de fichier passé en parametre contient une extension .jpg ou .gif par exemple mais la encore il serait possible de ruser. Tu peux egalement restreindre le telechargement a des fichiers qui ne se trouvent que dans un dossier bien particulier et tester par consequent que l'utilisateur n'introduit pas des references arrieres ".." dans le nom de fichier !

Bon ... en resumé ... on peut faire un joli truc bien pratique et parfaitement sur encore faut il prendre des precautions :)

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...