Comment afficher une image avec lien en PHP [Résolu/Fermé]

Signaler
-
 boom -
Bonjour,

Pour afficher une image en php, c'est :
{print("<img src=\"./image.jpg\" border=\"0\">");}

Mais pour afficher une image avec le lien, je ne sais pas comment on fait.
En html, je sais que c'est <a href="image.jpg">Voir image</a>

Et en php ?

8 réponses

Bon , même si le dernier messages date un peu .. (2007) il faut savoir que le php est code interpréter par un serveur.
Est ce serveur fait ce qu'on luis dit donc en html si l'on veux afficher une image avec un lien on ferra :

<a href="(LIEN SANS PARENTHÈSE)"> <img src="(IMAGES SANS PARENTHÈSE)" /> </a>

en php en pourrait l'écrire de différente maniéré :

<?php // on ouvre la balise php , a noter votre page dois être du type .php

print "<a href=\"(LIEN SANS PARENTHESE)\"> <img src=\"(IMAGES SANS PARENTHESE)\" /> </a>";
// noter bien les antislash devant les "
print '<a href="(LIEN SANS PARENTHESE)"> <img src="(IMAGES SANS PARENTHESE)" /> </a>';
// noter bien qu'il n'y a plus d'antislash devant les " parce que on inscrit le texte avec des '

echo "<a href=\"(LIEN SANS PARENTHESE)\"> <img src=\"(IMAGES SANS PARENTHESE)\" /> </a>";
echo '<a href="(LIEN SANS PARENTHESE)"> <img src="(IMAGES SANS PARENTHESE)" /> </a>';

// même chose pour les 2 dernier sauf changement de fonction print et echo sont pareille !


?>
6
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 63550 internautes nous ont dit merci ce mois-ci

Salut, Commence déjà par rendre ton code un peut plus visible ^^'
ensuite regarde la ligne 4,

"if(false !== ($file = readdir($dossier)))" oouuuuhh

c'est pas beau ça ! c'est plus simple comme ça regarde :

"if($file = readdir($dossier))" enfin bref le "false !==" ne sert a rien je pense que tu comprendra...

maintenant je vais te montrer pourquoi ca ne peut pas marcher comme ça :


----------------------------------------------------------------------
1 <?php
2 $dossier = opendir('imagesreduites'); //$dossier est un pointeur vers le dossier 'imagesreduites'
3 $i = 0;
4 while (false !== ($file = readdir($dossier))) { //$file contient bien le nom du fichier :)
5 if($file != "."&&$file != ".."&&$file != "index.php" ) {
6 echo '<img src=/"' $dossier '/' $file '"><br />'; //$dossier ne contient pas le nom du dossier.
7 }
8 }
9 ?>
----------------------------------------------------------------------

Alors a la ligne 6 il serait plus simple de mettre directement 'imagesreduites' non ? -.-'
réfléchit y... $dossier c'est un peu comme un tableau qui contient tout les fichiers, ce n'est donc
pas le nom de ton dossier, pigé ?

@plouch !
Salut,

le "false !==" ne sert a rien je pense que tu comprendra...

Faux, ce code sert.
Voir la doc (http://www.php.net/manual/fr/function.readdir.php) :
Cette fonction peut retourner FALSE, mais elle peut aussi retourner une valeur équivalent à FALSE. Veuillez lire la section sur les booléens pour plus d'informations. Utilisez l'opérateur === pour tester la valeur de retour exacte de cette fonction.

Aurélien
Messages postés
215
Date d'inscription
lundi 8 juin 2009
Statut
Membre
Dernière intervention
21 juin 2011
81
Pourquoi tu t'embêtes à le faire en PHP alors que le HTML le permet...
echo "<a href='ladresse.html'><img src='tonimage.jpg' /></a>";
Surement parce qu'il veut afficher une certaine image suivant certain paramètres... Par exemple, un avatar qui varie selon le membre (après, j'ai pas lu son code)
Rappel: Le Php est que du HTML dynamique

Contenu de ce fait pour structurer une page Php il faut utiliser du HTML donc......je suppose que tu dois faire:

print '<a href="image.jpg">Voir image</a> ';
Non, c'est :
{print("<a href=\"image.jpg\">Voir image</a>");}
Messages postés
1463
Date d'inscription
mardi 25 octobre 2005
Statut
Contributeur
Dernière intervention
29 octobre 2019
416
Salut

La solution de SomeOne est tout a fait valable...

Celle ci fonctionne également :
echo '<a href="image.jpg">image</a>';

Tchuss
Argh!!!!!!!!!!!!!!!!!
Au secours!!!!!!!!!!!!!!!


Le php c'est TOUS SAUF DU HTML DYNAMIQUE!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Pour la simple et bonne raison que si tu veux afficher une image sur ton site web,
et que tu ne veux pas que les gens puissent voir l'url du fichier d'où provient tes image
il faut bien ruser avec php non ? ca pourait peut etre fonctionner avec un .htaccess...

Enfin j'en sais rien... Quelqu'un sait comment faire pour éviter qu'une personne tape
par exemple :

"www.**********.com\IMAGES\"

dans son navigateur et puisse accéder a ce dossier ?
le but de la manipulation serait soit de lui restreindre l'accès, soit qu'il ne puisse pas voir
l'url en regardant les propriétés de l'image...

Cordialement.

Peut etre en mettant un index.html vierge dans le répertoire.
en mettant un .htaccess à la racine de ton site pour éviter son exploration avec ce code :

<Files .htaccess>
order allow,deny
deny from all
</Files>

Attention, on ne pourra renommer le fichier en ".htaccess" que côté serveur, windows refusant tout naturellement ce type d'appelation de fichier. Il faudrait le faire sur Filezilla par exemple.
merci de t'être interessé à mon cas, j'ai fini par faire autrement en prenant un bout de code correspondant plus à ce que j'attendais.

c'est vrai qu'en regardant, le false !== ($file = readdir($dossier)) était un peu absurde !

@ bientôt !
Salut moi en php je fais comme ça :

echo"<a href=\"ma_page_cile\"><img src=\"mon_dossier/monimage\">\"</a>";
Bonjour,
J'ai un dossier avec mes photos, je veux dans mon index lui mettre une boucle pour qu'il affiche 1 à 1 les photos.
Je suis novice en php, j'ai trouvé ce bout de code que j'ai adapté :

<?php
// creation de la liste des images
// tu ouvre le dossier qui contient les images
$dossier = opendir('imagesreduites');
//tu fais une boucle qui lit les nom de fichier 1 a 1
$i = 0;
while (false !== ($file = readdir($dossier)))
{
//tu verifies si le nom du fichier te convient
if($file != "."&&$file != ".."&&$file != "index.php" )
{
//tu mets ton script pour manier les images
echo '<img src=/"' $dossier '/' $file '"><br />';
}
}
?>
j'ai manifestement un problème avec la dernière ligne (echo), la page me met un message d'erreur sur cette ligne.

Pouvez-vous m'aider svp ?