Nếu bạn có quyền truy cập vào cơ sở dữ liệu, nó sẽ là một vấn đề đơn giản trong php để lưu trữ thứ tự mỗi ngày trong cơ sở dữ liệu. Sau đó, khi tải trang, bạn kiểm tra ngày mà đơn hàng đến và cập nhật nếu nó không khớp với ngày hiện tại. Quá trình cập nhật sẽ bao gồm việc tạo một đơn hàng mới thông qua số rand của php.
Nếu bạn không có quyền truy cập vào cơ sở dữ liệu, bạn sẽ cần phải đưa ra một cơ chế ngẫu nhiên khác chỉ dựa trên ngày. Một tùy chọn sẽ là tạo một băm của ngày và sử dụng nó để điều khiển thứ tự của bạn.
Dưới đây là một số giả php của tùy chọn phi 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;
}
}
Điều này có thể dường như quá phức tạp. Nếu bạn có thể đặt một hạt giống để tạo số ngẫu nhiên trên máy chủ của mình, thì bạn có thể thay thế hầu hết mã ở trên bằng cách đó. Tuy nhiên, ngày càng có nhiều việc triển khai được di chuyển ra khỏi các trình tạo số ngẫu nhiên giống, nó làm cho nó ít tầm thường hơn để tạo lặp lại cùng một chuỗi các số ngẫu nhiên.
Nguồn
2012-02-08 02:54:29
Bạn chỉ cần giữ thứ tự trong tập tin/cơ sở dữ liệu và thay đổi nó mỗi nửa đêm. Bất kỳ câu hỏi cụ thể nào? – zerkms