Précédent   Forum des professionnels en informatique > PHP > Langage > Fonctions
Fonctions Forum d'entraide sur les fonctions PHP. Avant de poster -> FAQ fonctions et Sources diverses
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 13/07/2008, 18h09   #1
Membre régulier
 
Inscription : novembre 2002
Messages : 310
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 310
Points : 93
Points : 93
Par défaut [Dates] Générer un nombre aléatoire en fonction de la date

Bonjour,

Je souhaiterai pour mon site, afficher une "image du jour" qui serait donc piochée parmis les images d'un répertoire.

J'arrive à piocher une image aléatoire en générant un nombre aléatoire entre 1 et mon total d'image mais cette image change après chaque actualisation; or j'aimerai qu'elle change seulement en fonction de la date du jour. Donc il faudrait que le nombre que je génère soit toujours le même pour une même date.

Est ce que c'est possible de faire ça? Si oui, quelqu'un a une idée à me donner svp?
Merci d'avance
Hell est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/07/2008, 18h21   #2
Membre éclairé
 
Avatar de htr999
 
Étudiant
Inscription : février 2008
Messages : 331
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : février 2008
Messages : 331
Points : 376
Points : 376
tu nommes les images par le numéro de la date ex. img1,... img30
après avec fonction date('d') tu concatène à la src de l'image.
htr999 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/07/2008, 18h32   #3
Membre du Club
 
Avatar de dervish
 
Inscription : avril 2004
Messages : 99
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 99
Points : 66
Points : 66
salut,
sinon, lors du premier appel à ton script du jours, tu copies ton image choisie aléatoirement en la renommant avec date('d').".png" et à chaque nouvel appel du script tu vérifies que cette image existe et tu l'utilises. (au premier appel, tu peux effacer les images du jour précédent, une sorte de ramasse-miettes).
dervish est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/07/2008, 18h49   #4
Membre régulier
 
Inscription : novembre 2002
Messages : 310
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 310
Points : 93
Points : 93
Salut à tous
Merci pour votre aide. J'avais pensé à faire quelque chose de ce genre la mais il existe pas une fonction en maths qui retourne un nombre entre 0 et 1 en fonction du nombre passé? Genre ln ou quelque chose de ce type la?

J'aurai plus qu'à utiliser cette fonction avec ma date du jour et multiplier mon résultat 0 <= resultat <= 1 par mon totlal d'image.
Hell est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/07/2008, 18h53   #5
Membre éclairé
 
Avatar de htr999
 
Étudiant
Inscription : février 2008
Messages : 331
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : février 2008
Messages : 331
Points : 376
Points : 376
un exemple de float random
Code :
1
2
3
4
5
6
<?php
function random_float ($min,$max) {
   return ($min+lcg_value()*(abs($max-$min)));
}
echo random_float(0,1);
?>
[code tiré du site PHP Manual http://fr.php.net/rand]

sinon il y a la fonction LCG_VALUE http://fr3.php.net/lcg_value
htr999 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/07/2008, 19h20   #6
Membre régulier
 
Inscription : novembre 2002
Messages : 310
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 310
Points : 93
Points : 93
Merci mais malheureusement cette valeur change à chaque fois. Je vais essayer de voir si je peux bidouiller en me servant de sinus même si j'aime pas trop bidouiller
Hell est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/07/2008, 19h43   #7
Membre du Club
 
Avatar de dervish
 
Inscription : avril 2004
Messages : 99
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 99
Points : 66
Points : 66
Citation:
Envoyé par Hell Voir le message
il existe pas une fonction en maths qui retourne un nombre entre 0 et 1 en fonction du nombre passé? Genre ln ou quelque chose de ce type la?

J'aurai plus qu'à utiliser cette fonction avec ma date du jour et multiplier mon résultat 0 <= resultat <= 1 par mon totlal d'image.
Dans ce cas ça n'a rien d'aléatoire...
dervish est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/07/2008, 20h00   #8
Membre éclairé
 
Avatar de htr999
 
Étudiant
Inscription : février 2008
Messages : 331
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : février 2008
Messages : 331
Points : 376
Points : 376
c'est plutôt la question qui n'est pas posée clairement !.!
enfin de compte, ton répertoire contiendrait combien d'images ?.?
pourquoi la solution de nommage de 1 à 30, et une image correspondant à la date [date('d')] ne marcherait pas-t-elle ?
htr999 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 13h00   #9
Membre régulier
 
Inscription : novembre 2002
Messages : 310
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 310
Points : 93
Points : 93
Parce que j'ai dans les 2800 images, je me vois mal faire ça pour chaque image
Hell 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 04h34.


 
 
 
 
Partenaires

Hébergement Web