quotes
----------------------------------
| id | data | data2
----------------------------------
| 1 | first quote | translated quote
| 2 | second... | bla bla
Và sau đó bạn chọn nó như:
$firstday="2011-06-06";
$getquote = mysql_query("SELECT * FROM quotes WHERE id=(DATEDIFF(CURDATE()+1, '$firstday'))");
$quote = mysql_fetch_object($getquote);
echo $quote->data . $quote->data2;
CHỈNH SỬA !!:Tôi đã loại bỏ dateiff, vì vậy ID được trả lại từ sự khác biệt về ngày là TRỰC TIẾP ở ĐÂU.
Điều này thực hiện là tính toán chênh lệch giữa ngày đầu tiên và ngày hiện tại . Vì vậy, mỗi ngày dateiff sẽ lớn hơn 1 ngày. DATEDIFF(CURDATE()+1, '$firstday') as datediff
có thể được hiểu là
datediff = differenceBetween(Currentday +1 and firstDay)
- Hôm qua là 2011-07-06, do đó
datediff = 2011-07-07 (there is +1!) - 2011-07-06
là 1 - hôm nay, đó là
2011-07-08 - 2011-07-06
đó là 2 - ngày mai
2011-07-09 - 2011-07-06
đó là 3 - ngày mốt
2011-07-10 - 2011-07-06
đó là 4 - trong một tháng, nó sẽ là
2011-08-08 - 2011-07-06
là 33
vì vậy, dateiff mỗi ngày lớn hơn 1
quotes
-------------------------
|id| data
-------------------------
|1| quote day 1 (because date difference from start == 1)
|2| quote 2 day 2 (datediff == 2)
|3| quote 3 day 3 (datediff == 3)
|4| quote 4 day 4
.....
Hoặc ngắn hạn:Mỗi ngày sẽ có một báo giá khác nhau, bắt đầu với ID 1 trở đi.
Tôi không thể giải thích thêm về điều này ..
CHỈNH SỬA # 2:5 dấu ngoặc kép mỗi ngày
$offset = date_diff(new DateTime('now'), new DateTime('2011-08-29'))->format('%d');
$getquote = "SELECT * FROM quotes LIMIT {$offset},5";
chỉnh sửa thứ hai nhờ ajreal ( lỗi cú pháp SQL LIMIT )
CHỈNH SỬA # 3:5 dấu ngoặc kép mỗi ngày, có thể thay đổi theo biến ..
tùy chọn 1:
$choose=0; //statically defined, only first of that day will pop out
tùy chọn 2:
$choose = mysql_real_escape_string($_GET["qid"]); //which one will be defined in url.. (watch out, people can figure it out and browse through all quotes
tùy chọn 3:
$choose = rand(0,4); //will choose it randomly from those 5 daily quotes
Vì vậy, hãy chọn một trong những tùy chọn bạn thích và thêm nó trước tùy chọn này:
$offset = 5*date_diff(new DateTime('now'), new DateTime('2011-08-29'))->format('%d') + $choose;
$getquote = mysql_query("SELECT * FROM quotes WHERE id = '$offset'");
$quote = mysql_fetch_object($getquote);
echo $quote->data . $quote->data2;