Précédent   Forum des professionnels en informatique > PHP > Outils > EasyPHP
EasyPHP Forum d'entraide sur EasyPHP : installation, utilisation, etc. Avant de poster -> Cours EasyPHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 01/08/2007, 01h06   #1
Membre à l'essai
 
Inscription : juillet 2007
Messages : 133
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : juillet 2007
Messages : 133
Points : 21
Points : 21
Envoyer un message via MSN à daninou
Par défaut téléchargement de fichiers

Bonjour,

J'ai avancé dans mon script PHP!! Merci à Julp pour son tuto sur les requetes Mysql=>PHP

Voilà mon nouveau blem, je ne trouve pas la réponse malgré mes reherches...

Je souhaiterais remplacer un lien image par un lien download:
voilà le script actuel:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/* Affiche une ligne pour chaque artiste */
while ($ligne = mysql_fetch_assoc($result)) 
{
echo "<tr>\n"; 
echo "<td>{$ligne['artisteID']}</td>\n";   
echo "<td>{$ligne['artisteNom']}</td>\n";
echo "<td>{$ligne['artisteAlbum']}</td>\n";
echo "<td>{$ligne['artisteTitre']}</td>\n";
echo "<td>{$ligne['artisteCommentaire']}</td>\n";
echo "<td>
<a href='../images/{$ligne['artisteImage']}'	border='0'>           
<img src='../images/{$ligne['artisteImage']}' border='0'            
width='100' height='100'></a></td>\n";
echo "</tr>\n";
}
J'ai beau changer le script, je n'arrive pas à obtenir un lien de téléchargement, en cliquant sur l'image :
Code :
1
2
<img src='../images/{$ligne['artisteImage']}' border='0'            
width='100' height='100'>
Je sais, c'est peut etre pas tres clair...

Disons que je sais faire un lien en html pour un appel de fichier... mais dans le cadre d'une DB et un script PHP, je ne vois pas...
Merci
daninou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 02h48   #2
Nouveau Membre du Club
 
Inscription : juin 2006
Messages : 39
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 39
Points : 39
Points : 39
Envoyer un message via ICQ à Dudule-le-poisson
Je ne saisis pas bien ce que tu souhaites.

Veux-tu un simple lien texte en lieu et place de ton image ?
Code :
echo "<td><a href='../images/{$ligne['artisteImage']}'>Download</a></td>\n";
Veux-tu que ton image se transforme en lien quand on clique dessus ? OU qu'un lien apparaisse à côté de l'image quand on clique dessus ? Auquel cas, ça relève du JavaScript.

Veux-tu qu'en cliquant sur l'image, une page affichant "Cliquez ici pour télécharger cette image" apparaisse ? Dans ce dernier cas, tu dois créer une page supplémentaire (genre "download.php", acceptant des arguments genre file="mon_image.png") et faire pointer ton lien dessus.
Dudule-le-poisson est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 10h03   #3
Membre chevronné
 
Avatar de cadoudal56
 
Inscription : février 2005
Messages : 671
Détails du profil
Informations personnelles :
Âge : 40

Informations forums :
Inscription : février 2005
Messages : 671
Points : 646
Points : 646
Hello,

D'apres ce que je comprends, ce code
Code :
1
2
3
4
5
 
echo "<td>
<a href='../images/{$ligne['artisteImage']}'	border='0'>           
<img src='../images/{$ligne['artisteImage']}' border='0'            
width='100' height='100'></a></td>\n";
Ne lui permet pas ce cliquer sur l'image pour la télécharger....

Premiere erreur :
les border='0' n'existe pas en HTML dans les balises de liens A
mais a la place u peux mettre un target="_blank" ainsi l'image s'ouvrira dans une nouvelle fenetre...

Deuxieme probleme, quand tu pointes sur un fichier de type Image (jpg, gif, png), le navigateur cherche a l'afficher et ne propose pas de la télécharger...
C'est comme cela.

Si tu veux que le visiteur puisse télécharger ton image, affiche un texte a coté qui dit :

Si vous souhaitez télécharger cette image, faites clic droit et enregistrer l'image sous...

@+
cadou
__________________
PHP Competition System
Script de gestion de coupes et championnats
http://phpcompet.free.fr

Mon jeu de foot
cadoudal56 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 12h27   #4
Nouveau Membre du Club
 
Inscription : juin 2006
Messages : 39
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 39
Points : 39
Points : 39
Envoyer un message via ICQ à Dudule-le-poisson
N'y a-t-il pas moyen de forcer le téléchargement en faisant un script PHP qui modifie les en-têtes PHP ?
Code :
1
2
3
header('Content-Disposition: attachment; filename="nom_du_fichier.csv"');
// peut-être quelques autres header()
// renvoyer le fichier
Je pose la question car je n'ai pas testé personnellement. En résumé, Content-Disposition: attachment; indique au navigateur qu'il s'agit d'une "pièce jointe", pas d'un contenu affichable et filename évite que le nom de fichier proposé par défaut soit le nom du script PHP.
Dudule-le-poisson est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 21h26   #5
Membre à l'essai
 
Inscription : juillet 2007
Messages : 133
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : juillet 2007
Messages : 133
Points : 21
Points : 21
Envoyer un message via MSN à daninou
Bonjour

Merci pour les réponses!!

En fait, d'abord voilà ce qui se passe: avec ce script, en cliquant sur l'image, cela ouvre une autre fenetre avec l'image en agrandit...

Je souhaite faire pointer l'image sur un téléchargement en .avi ou en .mp3 par exemple.
Je vais essayé en html, du style :

Code :
<A HREF="Musique/CD.mp3">Cliquez ici pour transférer ce fichier (239 Kilo Octets)</A>
@+
daninou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 22h16   #6
Membre à l'essai
 
Inscription : juillet 2007
Messages : 133
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : juillet 2007
Messages : 133
Points : 21
Points : 21
Envoyer un message via MSN à daninou
Citation:
Envoyé par Dudule-le-poisson
Veux-tu que ton image se transforme en lien quand on clique dessus ?
Oui, c'est ca que je veux
daninou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 22h58   #7
Nouveau Membre du Club
 
Inscription : juin 2006
Messages : 39
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 39
Points : 39
Points : 39
Envoyer un message via ICQ à Dudule-le-poisson
Hmm... c'est un souhait un peu bizarre, surtout pour un débutant. Je pense qu'il y a malentendu.

Ce que tu veux faire ne se résumerait pas à ça, des fois ?
Code :
<a href="media.mp3"><img src="image.jpg" alt="une image"></a>
...ce qui, traduit humainement donne une image qui, lorsqu'on clique dessus, lance le téléchargement d'un MP3.
Il te suffit donc de générer ce type de code HTML avec PHP.
Dudule-le-poisson est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 23h51   #8
Membre à l'essai
 
Inscription : juillet 2007
Messages : 133
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : juillet 2007
Messages : 133
Points : 21
Points : 21
Envoyer un message via MSN à daninou
Oui, c'est bien cela, mais cala n'a rien de bizarre

Voilà, j'ai ajouter un champ a ma base ('lien') et j'ai utiliser du code html "a href" pour apeller l'ouverture d'un fichier.mp3 et c'est OK

Merci pour tes info Dudule!!

@+
daninou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/08/2007, 00h05   #9
Nouveau Membre du Club
 
Inscription : juin 2006
Messages : 39
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 39
Points : 39
Points : 39
Envoyer un message via ICQ à Dudule-le-poisson
De rien

Ce qui était bizarre, c'était la proposition que tu avais cité : une image qui se transforme en lien texte quand on clique dessus.
Dudule-le-poisson est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h29.


 
 
 
 
Partenaires

Hébergement Web