5568 sujets

Sémantique web et HTML

Bonjour et merci de m'accueillir dans ce forum.

Au sein d'une page html, je souhaite afficher une image qui change à chaque actualisation.
J'ai donc créé un fichier images.php dont voici le code :

<?php
if(isset($_COOKIE["nom_cookie"]))
{
$image = $_COOKIE["nom_cookie"];
$image++;
if($image == 11)
{
$image = 1;
}
setcookie("nom_cookie", $image);
}
else
{
$image = 1;
setcookie("nom_cookie", $image);
}
echo'<img src="'.$image.'.jpg" />';
?>


Cela fonctionne très bien quand je lance directement le fichier images.php : mes 10 images sont affichées en boucle à chaque actualisation de la page, dans l'ordre que j'ai défini (de 1 à 10).

Mais dans mon fichier html, lorsque j'appelle le fichier images.php avec la balise <img src="images.php" />, rien ne se passe...

Où est mon erreur ??

Merci d'avance pour votre aide.
Bonsoir,

L'erreur c'est que vous appelez une balise image... dans une balise image, au lieu d'appeler le lien source de l'image.

On peut le voir facilement en lisant votre code, mais bous devriez aussi prendre l'habitude de regarder le html produit à l'aide de l'inspection de votre navigateur, vous l'auriez vu tout de suite.

De plus (et surtout) la page php ne peut être appelée de cette manière, il faut necessairement avoir recours à un include ou un require php. Je vous laisse aller voir les spécifications de ce language (je vous écris à partir d'un mobile, difficile pour moi de détailler plus avant en l'état).
Modifié par Olivier C (06 Aug 2017 - 22:21)
Maintenant je suis sur un PC... donc, si le php génère uniquement un lien source (genre : 'http://site.truc/image2.jpg') :
<img src="<?php require 'somefile.php'; ?>" />

Mais il faut que le fichier soit en .php, et non en .html, sinon le code ne sera pas interprété.