Si tiene acceso a una base de datos, sería muy sencillo en php almacenar el pedido todos los días en la base de datos. Luego, cuando se carga la página, usted verifica la fecha de origen y actualiza si no coincide con la fecha actual. El proceso de actualización consistiría en generar un nuevo pedido a través de php's rand.
Si no tiene acceso a una base de datos, tendrá que idear un mecanismo de aleatorización diferente basado únicamente en la fecha. Una opción sería generar un hash de la fecha y usarlo para dirigir su pedido.
He aquí algunos php pseudocódigo de la opción de no-DB:
$fullhash = md5(date("Ymd"));
$hash = $fullhash;
$countImages = 4; //or whatever the actual number of images you have is
$shownImages = array();
while ($countShown < $countImages)
{
$num = ord($hash); //get ascii value of first char of $hash
$num = $num % $countImages; //convert the number to something that corresponds to an image
if (!(in_array($num, $shownImages)))
{
echo "<img src='image" . $num . "'>";
$shownImages[] = $num;
}
$hash = substr($hash,1);
if (strlen($hash) == 0)
{
$fullhash = md5($fullhash); //generate a new hash in case the previous one did not catch all images
$hash = $fullhash;
}
}
Esto podría parecer demasiado complicado. Si puede establecer sistemáticamente una semilla para la generación de números aleatorios en su servidor, entonces puede reemplazar la mayor parte del código anterior con eso. Sin embargo, cada vez más implementaciones se están alejando de los generadores de números aleatorios de siembra usted mismo, lo que hace que sea menos trivial generar repetidamente la misma secuencia de números aleatorios.
Simplemente mantenga el orden en el archivo/base de datos y cámbielo cada medianoche. Alguna pregunta en particular? – zerkms