Aller au contenu

Sujets conseillés

Posté

Bonsoir,

Je m'explique....

Mon site est dédié au photomontage.

Hors, pour le moment, sur ma home, j'ai une image, une et une seule. Ce qui me désole.

N'étant pas encore un top pro en php, je souhaiterias avoir quelques pistes pour faire:

un script qui fasse qu'a chaque chargement/rechargement de la home, ce soit une image différente qui soit affiché....

Pour info, toutes les images du site sont gérées par une base mysql et du php.

Merci à vous :)

Posté

Yep,

Ca a l'air sympa ton affaire la.

Cependant, j'ai tout de même envie de me prendre la tête, c'est ainsi que l'on avance, et j'aime pas stagner ;)

Merci tout de même.

Posté

Allez hop un code tout bête à coller chez soi :)

Page en php nécessaire comme de bien entendu, il faut juste créer un répertoire pour placer les images aléatoires. Selon ton script PHP, il se peut que ce répertoire existe déjà. Il faut juste modifier les passages en gras ci-dessous...

-----------------

<?

$imgpath = "logos"; // chemin des images

$textalter = "Accueil / image aleatoire"; // attribut alt

$nodir = 0;

if ($imgpath == ".." || $imgpath == "." || $imgpath == "")

{

$nodir = 1;

$imgpath = ".";

}

$j = strlen($imgpath);

$j--;

if ($imgpath[$j] != '/' && $imgpath != ".")

$imgpath .= '/';

if (is_dir($imgpath))

{

if ($condir = opendir($imgpath))

{

$i = 0;

while (($curfile = readdir($condir)) != false)

{

$extension = "";

$extension = preg_replace("/.+\.(.{3,4})/", "$1", $curfile);

if ($extension == "png" || $extension == "gif" || $extension == "bmp" || $extension == "jpg" || $extension == "jpeg")

{

$i++;

$images{$i} = $curfile;

}

}

if ($images{1} == "")

{

echo "Aucune image dans le dossier";

}

else

{

$i = rand(1, $i);

$image = $images{$i};

echo "<img src=\"";

if ($nodir != 1)

echo $imgpath;

echo "".$image."\" alt=\"".$textalter."\" border=\"0\"/>";

}

}

else

{

echo "Ouverture impossible du dossier image";

}

}

else

{

echo "Rrépertoire incorrect";

}

?>

Je conseille de placer ce code dans un "affiche.php" par exemple que tu appelles ensuite en <include>

That's all folks ;)

Posté

Salut Steph13,

C'est simple, surtout si tes images ou les noms des fichiers sont dans une base de données mysql.

Un seul query avec

SELECT * from images order by rand() limit 1;

Te donnera une image différente à chaque exécution de la requête.

Dan

Posté (modifié)

Rooo....! c'est top ! Merci beaucoup :)

Je vais tester tout cela dans la journée.

J'viens d'en apprendre la ! Trop cool le Hub.

Edit: Dan, je viens de tester, et ça marche nickel ! Bon je pense que tu t'en doutais que ça marche hein ;)

Mais c'est juste pour dire que j'en suis bien heureux :)

Modifié par steph13

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...