Текст който да се сменя за деня

kitchenbg

Registered
Здравейте, имам изградена база данни във която вкарвам информация за седмицата по дни ... та въпроса ми е следния ... може ли и как да направя така че примерно днес ако е петък да взема произволен запис от базата за петък и този запис да стои през целия ден?
 
правиш проверка за деня, след което с random() извличаш от базата какво ти трябва по дадения критерии :?
 
DirectX каза:
правиш проверка за деня, след което с random() извличаш от базата какво ти трябва по дадения критерии :?
това е ясно :)
идеята е следната ... след като избере даден запис, то той да се показва целия ден, а не при рефреш да го сменя с друг.
 
запазвай го в бисквитка и на всеки рефреш проверявай дали има бисквита и дали е създадена днес иначе правиш нова
 
ivzb каза:
запазвай го в бисквитка и на всеки рефреш проверявай дали има бисквита и дали е създадена днес иначе правиш нова
добре, а ще може ли да дадеш някакъв пример по който да се ориентирам ... понеже съм малко невеж с тези бисквитки? :?
 
бисквитка се създава чрез функцията setcookie(). Първия параметър е име, чрез което ще я достъпваш чрез супер глобалната променлива $_COOKIE, втория е стойноста, която ще съдържа, третата е след колко време ще бъде унищожена. Останалите параметри не мисля, че ти трябват. В твоя случай ще е нещо такова:
PHP:
setcookie ('day', $day_value, time() + 3600*24)
бисквитата ще е валидна един ден, т.е 24 часа от създаването. Достъпваш я с $_COOKIE['day']. Само ти трябва някаква проверка дали е създадена и ако не я създаваш и след това от нея си взимаш информацията, която ти трябва.

Можеш да видиш още повече информация тук
 
Ако на всички потребители се показва един и същ текст това не е необходимо. В БД маркираш един запис който ще се показва и готово. При всяко обрщане към БД правиш проверка дали са минали 24 часа (или дали се е сменила датата), и ако това е станало избираш друг запис.
 
madmax3_ каза:
Ако на всички потребители се показва един и същ текст това не е необходимо. В БД маркираш един запис който ще се показва и готово. При всяко обрщане към БД правиш проверка дали са минали 24 часа (или дали се е сменила датата), и ако това е станало избираш друг запис.
този вариант звучи добре, а някакъв пример да дадеш?
 
И защо трябва да правиш тия ненужни заявки като можеш да го правиш само веднъж на ден и да пазиш в бискитка и да четеш от там? Представи си какво става като имаш 10к потребители и постоянно се правят некви заявки към базата :shock:
 
Това се сещам на първо време:

$sql = "SELECT * FROM `DB` WHERE `date` = CURDATE() LIMIT 1";

$q = mysql_query($sql);

if (mysql_num_rows($q) == 0)
{
$sql = "UPDATE `DB` SET `date` = CURDATE() ORDER BY RAND() LIMIT 1";

$q = mysql_query($sql);

$sql = "SELECT * FROM `DB` WHERE `date` = CURDATE() LIMIT 1";

$q = mysql_query($sql);

}

$r = mysql_fetch_assoc($q);

В отговор на ivzb : От една заявка ще ти се износи БД ли ?
 

Back
Горе