Date + ( X jours en + ) aléatoire

Résolu/Fermé
iLuc - 23 sept. 2010 à 05:31
 iLuc - 24 sept. 2010 à 00:29
Bonjour,

Je cherche à résoudre un petit code.
le bute est d'affiché une date aléatoire.

Dans ce code, je souhaite remplacé "strtotime("+1 day") "

Par un truc du genre : "strtotime("+"$nombre" day")

Le soucis, je ne pas sais comment l'écrire correctement pour que cela fonctionne. :-(
j'ai fais des essais, mais rien de bon.

Si quelqu'un a une idée ?... :-)

<?php

//// Affichage de la date + X jours "aléatoire"
$nb_min = 1;
$nb_max = 100;
$nombre = mt_rand($nb_min,$nb_max);

$xday = date('Y/m/d', strtotime("+1 day"));

echo $xday;
echo "</br>";
 
$randomday = '"Dans ' .$nombre. ' jours"';
echo $randomday;
?>

2 réponses

Et sa te donne quoi ???

je sais pas ce que tu vx avoir mais j'imagine =D...

Si tu vx avoir une date aléatoire mais dans le passer

strtotime --> translate le timestamp en date, mais le timestamp c'est le nombre de SECONDE depuis le 1 janvier 1970, donc dans ton cas, sa va toujours te donner la même date...

$nb_min = 1;
$nb_max = 8640000;
// 86400 = nombre sec dans 1 jour

et sa te donnera 1 date au hasard sur 100 à partir du 1er janvier 1970


Si tu vx avoir une date à partir du moment ou le script s'enclance
sa serair comme cela:

$nb_min = time();
$nb_max = $nb_min + 8640000;


et la sa te donnerai une date à partir de mnt sur 100jour

$nombre = rand($nb_min,$nb_max); // On tire une date au "pif"

$xday = date('Y/m/d', strtotime($nombre)); // on transforme en vrai date lisible

echo $xday; // On affiche la date
echo "</br>";

$reste_sec = $nb_min - $nombre; // le reste de seconde
$reste_jour = ceil($reste_sec / 86400); // On calcul le nombre de jour restant

echo 'Il vous reste environ '.$reste_jour.' à attendre'; // On affiche le résultat
?>
Bats-toi avec les meilleurs..
.. et crèves avec les autres
0
Utilisateur anonyme
23 sept. 2010 à 14:11
j'ai pu faire une faute à toi de voir si c juste et redit moi des nouvelles
0
Bonsoir Aurus, et merci pour le coup de pouce. :-)

Je test ce soir.

Pour les explications,
Le but est de rajouter "x" jours à la date du moment.
"x" compris entre 1 et 100 ( par exemple ).
et "x" est choisi au hasar, choix du nombre aléatoire entre 1 et 100.

En pratique, par exemple, quelqu'un veu envoyé une image à quelqu'un, et celle ci doit être envoyé, dans X jour. ( X choisi au hasar... )

je vous tien au courant des que jaurais fais des essais.

Sympathiquement
0
Utilisateur anonyme
23 sept. 2010 à 19:45
oui donc entre 1 et 100 jour plus tard ?
0
Bonsoir Aurus,

Encore merci pour ton aide.
j'ai pu faire ce que je chercher, et ça fonctionne.

Voici le code le bout de code:
----------------------------------
<?php

//// Début Affichage de la date + X jours Aléatoire - ConcePt'iLuc ////

$nb_min = 1;    /// Le minium de jours à ajouter
$nb_max = 100;  /// Le maximum de jours à ajouter

$nombre = mt_rand($nb_min,$nb_max);  /// On choisi un chiffre au hasard
$xday = '+'.$nombre.' days';   

$maDate3 = date('Y/m/d', strtotime($xday));  /// on ajoute le chiffre à la date courante

//// on affiche le message ///

$randomday = 'Tu aura ta surprise par mail dans ' .$nombre. ' jours';  
echo $randomday;
echo "</br>";
echo 'Plus exactement le: '.$maDate3;

//// Fin Affichage de la date + X jours Aléatoire - ConcePt'iLuc////


?>

----------------------------------
0