begin process at 2012 05 27 21:48:59
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Javascript / DHTML

 > UNE IMAGE AU HASARD PARMI TOUTES LES IMAGES D'UN RÉPERTOIRES PHP/JAVASCRIPT

UNE IMAGE AU HASARD PARMI TOUTES LES IMAGES D'UN RÉPERTOIRES PHP/JAVASCRIPT


 Information sur la source

Note :
9,5 / 10 - par 2 personnes
9,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Javascript / DHTML Classé sous :image, aléatoire, random, répertoire, hasard Niveau :Débutant Date de création :11/07/2005 Date de mise à jour :12/07/2005 11:37:38 Vu :10 757

Auteur : wizard512

Ecrire un message privé
Commentaire sur cette source (4)
Ajouter un commentaire et/ou une note

 Description

se code explore le dossier choisie (dossier comtenant les images) puit dresse une listes des fichiers ayant l'extention gif jpg, png, bmp (donc des images)  dans le dossier puis combiner au javascript il affichie une image au hasard

Source

  • <?php
  • $nb_T = 0;
  • $opdir = opendir("./img/");
  • while ($T = readdir($opdir))
  • {
  • if (!is_dir($T)) $nb_T++;
  • }
  • closedir($opdir);
  • ?>
  • <script language='javascript'>
  • function alleatoire() {
  • // le nombre suivant correspond au nombre d'images total répertorier dans le répertoire
  • var nombre_images = <?=$nb_T?>;
  • // on demande un nombre alleatoire a l'ordinateur
  • var nombre_alleatoire = Math.random();
  • var numero = Math.round( ( nombre_images - 1 ) * nombre_alleatoire ) + 1;
  • images = new Array;
  • <?php
  • function trouverExt ($fichier)
  • {
  • // coupe le nom du fichier
  • $tableau = explode(".",$fichier);
  • // retourne les caractere apres le dernier .
  • return $tableau[count($tableau)-1];
  • }
  • // open directory
  • $myDirectory = dir("./img/");
  • $nb_T = 1;
  • // get each entry
  • while($entryName = $myDirectory->read())
  • {
  • if($entryName != '.')
  • {
  • if($entryName != '..')
  • {
  • if($entryName != 'thumbs.db')
  • {
  • if (!is_dir($entryName))
  • {
  • $extention = trouverExt($entryName);
  • if($extention = 'gif' or $extention = 'jpg' or $extention = 'bmp' or $extention = 'png'){
  • {
  • print("images[$nb_T] = '$entryName';");
  • $nb_T++;
  • }
  • }
  • }
  • }
  • }
  • }
  • }
  • // close directory
  • $myDirectory->close();
  • ?>
  • var image = images[numero];
  • document.write("<img src='./img/" + image + "'>");
  • }
  • alleatoire();
  • </script>
<?php

$nb_T = 0;

$opdir = opendir("./img/");
while ($T = readdir($opdir)) 
{
   if (!is_dir($T)) $nb_T++;
}

closedir($opdir);


?>
<script language='javascript'>
function alleatoire() {

// le nombre suivant correspond au nombre d'images total répertorier dans le répertoire
var nombre_images = <?=$nb_T?>;

// on demande un nombre alleatoire a l'ordinateur
var nombre_alleatoire = Math.random();
var numero = Math.round( ( nombre_images - 1 ) * nombre_alleatoire ) + 1;

images = new Array;




<?php
	
function trouverExt ($fichier)
   {
   // coupe le nom du fichier 
   $tableau = explode(".",$fichier);   
   
   // retourne les caractere apres le dernier .
   return $tableau[count($tableau)-1];
   }


	// open directory
	$myDirectory = dir("./img/");
			$nb_T = 1;
	// get each entry
	while($entryName = $myDirectory->read())
	{
	if($entryName  != '.')
	{
	if($entryName  != '..')
	{
	if($entryName  != 'thumbs.db')
	{
	if (!is_dir($entryName))
	{
	$extention = trouverExt($entryName);
	
	if($extention = 'gif' or $extention = 'jpg' or $extention = 'bmp' or $extention = 'png'){
	{
	
			print("images[$nb_T] = '$entryName';");
			$nb_T++;

	
	}
	}
	}
	}
	}
	}
	}
	// close directory
	$myDirectory->close();


?>


var image = images[numero];

document.write("<img src='./img/" + image + "'>");
}

alleatoire();
</script>


 Conclusion

merci de bien vouloir m'indiquer les bug éventuelle

la fonction trouveExt() n'est pas de moi, merci a  romuluslepunk pour cette fonction


 Historique

12 juillet 2005 03:03:25 :
oublier d'enlever quelque chose
12 juillet 2005 11:37:38 :
...

 Sources du même auteur

Source avec Zip [ SYSFASTCACHE V.1 ] SYSTEME DE CACHE, GÉRÉ PAR UNE CLASS
Source avec Zip Source avec une capture MANGOTEMPLATE V.1 ( NOUVEAU SYSTEME DE TEMPLATE -> SIMP...
Source avec une capture CREATION D'UN HISTOGRAMME IDEAL POUR LES STATISTIQUES [TITRE...
Source avec une capture CRÉATION D'UNE IMAGE DE STATISTIQUE : LE CAMEMBERT
Source avec Zip OBTENIR DES INFORMATION (IP/HOST/RESEAUX)

 Sources de la même categorie

Source avec Zip Source avec une capture PHPJSVFORM : DES CLASSES PHP, DES JAVASCRIPTS POUR CRÉER FAC... par synanceia
BOUTON POUR SITE WEB PAYMENT par Tom56340
Source avec Zip Source avec une capture PETIT CLIENT + AJAX + PHP par kiki67100
Source avec Zip Source avec une capture BOÎTE À ONGLETS / MENUS ET SOUS-MENUS / JAVASCRIPT / PHP / D... par Heirem
Source avec Zip Source avec une capture JUKEBOX EN LIGNE par Flachy Joe

 Sources en rapport avec celle ci

REDIMENSIONNEMENT D'IMAGE PHP par JStevens
Source avec Zip Source avec une capture FUNCTION CAPTCHA par waterw72
Source avec Zip Source avec une capture GÉNÉRATION ALÈATOIRE D'UNE IMAGE POUVANT SERVIR DE FOND D'ÉC... par c v
Source avec Zip Source avec une capture AVATAR PERSONNALISÉ POUR FORUM par nacedo57400
Source avec Zip Source avec une capture REDIMENSIONNER UNE IMAGE par Bahanix

Commentaires et avis

Commentaire de stroubinou le 11/07/2005 14:39:10

Salut!

Pourquoi
#     if($entryName != '.')
#     {
#     if($entryName != '..')
#     {
#     if($entryName != 'thumbs.db')
#     {
#     if (!is_dir($entryName))
#     {

Ca ne serait pas plus simple d'utiliser une seule condition, avec des and ?
Autre chose, ca n'aurait pas été plus simple de tout faire en php? parce que il y a quand meme des utilisateurs qui n'autorisent pas le javascript.

+++

Commentaire de garfield90 le 11/07/2005 16:41:09

# <?php
#  
# $nb_T = 0;
#  
# $opdir = opendir("./img/");
# while ($T = readdir($opdir))
# {
#    if (!is_dir($T)) $nb_T++;
# }
#  
# closedir($opdir);
#  
#  
# ?>

$nb_T te donne le nombre de fichier qui ne sont pas des repertoires, et tes fichiers qui ne sont pas des images seront pris en compte ( genre .htaccess, index.html, titi.php, ...)

ta verif est fausse au niveau du test sur les extensions:
if($extention = 'gif' or $extention = 'jpg' or $extention = 'bmp' or $extention = 'png')
or ca marcherai mieux avec des ==

tu ouvres 2 fois ton dossier ( avec 2 parcours du contenu => mauvais algorithme) alors que tu aurais pu le faire qu'une fois ( en plus tu utilises 2 méthodes de parcours, ca au moins le mérite de montrer que ca existe)


Pour stroubinou, ce code est inutile, il suffit de rechercher les extensions qu'ils l'interessent et de faire ces opérations.

#     if($entryName != '.')
#     {
#     if($entryName != '..')
#     {
#     if($entryName != 'thumbs.db')
#     {
#     if (!is_dir($entryName))
#     {

Je ne parlerai pas ici du probleme de l'utilisation de l'extension ( car ce n'est pas de l'upload, mais le coeur y est , oups, c'est fait ;) )

Commentaire de Pascail le 12/07/2005 12:38:54

Je ne comprends pas l'utilisation du javascript.
Moi j'utilise un script du genre pour faire alterner des images, il est aussi simple que ça :

$y=0 ;  
$handle = dir("./images/headers/");
while ($file = $handle->read()) {
if (($file != ".") && ($file != "..") && (strpos($file, ".jpg")!=false)) {
$y = $y+1 ;
$imag[$y] = $file ;      
}
}
$handle->close();
$numb = rand(1,$y) ;

Et l'appel de l'url de l'image se fait de cette manière :
'./images/headers/'.$imag[$numb]
Ce n'est pas le script parfait, loin de là, incrémentations douteuses, vérifications mineures, mais il a le mérite d'être un peu moins compliqué ... Un peu.

Commentaire de master dje le 04/03/2010 13:04:54

Je suis vraiment pas doué car aucune image ne s'affiche chez moi... j'ai inséré le code entier à l'endroit ou l'aperçut doit être, j'ai changé le dossier racine.
Le script ne m'affiche aucune erreur, il y a juste rien qui se passe xD

L'erreur vient d'ou ? j'ai re re re regardé aux chemins de mes images et c'est bon théoriquement.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Ajout d'une id aléatoire dans une url [ par baab ] Bonjour,Voil&#224; dans une partie d'un programme que je fais, un visiteur cr&#233;e une image et ensuite je lui fournis l'url de l'image que je modif affichege d'image [ par lumikele ] Bonjour,je suis surement le plus débutant des débutant puisque jusqu'à 10 mn, je ne connaissais pas la php :-(J'ai fait plusieurs choses en html mais Uploader [ par ldevun ] Bonjour, Je souhaite faire une copie de fichier dans un répertoire distant. Mon probleme réside lorsque je veux mettre une condition si je choisi d al Image aléatoire [ par theoscar ] Bonjour à tous !Voici un code qui affiche une image aléatoire sur une page à partir d'un dossier 'image'. Ce code fonctionne très bien mais j'aimerais scrip image aléatoire [ par didiflo ] bonjour a tousvoila j'aimerais faire un script qui apelerais mes images depuis ma basemais je y arive pas car sa me met des erreursj'ai un serveur ded arborescence de repertoire et sous répertoire avec galerie d'image [ par bladehelsing ] Bonjours à tous,après avoir essayer tous les codes arborescence avec galerie d'image.j'en ai trouvé aucun qui:affiche d'abord les répertoires qui seul Texte ou image aléatoire [ par ndmsp ] Bonsoir à tous. Je cherche un script (php ?), qui me permettrais d'afficher aléatoirement une image ou un texte... Connaissez vous une méthode ??? Bie Erreur d'image [ par deutch36 ] Bonjour a tous et a toutes, je suis en dernière année de BTS et je dois donc réaliser un projet pour une entreprise. Cependant il se trouve que j'ai u redimension d'une image apres click sur miniature ???? [ par toffradamus ] je voudrais redimensioner une image apres le click sur miniature , ftp sur free , voici le code Mes images <!-- .Style1 { font-fam Mur d'image aléatoire [ par seyvapul ] Bonjour à tous. Je souhaite faire sur ma page de garde, un mur d'images (Tableau 3l 5c, les miniatures font 95x95) qui changent de manière aléatoires


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,390 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales