Добро пожаловать, Гость!
Набросок
Бешенный форум | Набросок


Набросок
24 Апр 2015Вот писал бонусы для гостевой чтоб активность поднять, но сталкнулся с проблеммой, люди стали быстро багатеть как бы остатки этих бонусов вытьнуть назад скажем через сутки? Вот код если кому интересно
<?
///получаю общее колличество сообщений
$a=mysql_result(mysql_query("SELECT COUNT(*) FROM guest"),0);
///бонус
$b=mysql_result(mysql_query("SELECT COUNT(*) FROM bonus WHERE balls = '$a'"),0);
///генерирую бонусный ключ каждые 100 постов
if($a%100==0 && $a==0){
mysql_query("UPDATE bonus SET balls = '$a', id_user = '0', key = '$passgen'");
mysql_query("INSERT INTO guest (id_user, time, msg) values('0', '$time', 'В честь юбилейного $a сообщения был сгенерирован бонусный ключ <strong>$passgen</strong> первый кто его активирует получиу $a баллoв')");
}
?>
вот так примерно
Комментарии:


Автор темы
БЛИН Я НУБЯРА!



Автор темы
Да так то логично, но блин работы многовато, это же везде где он баллы потратить может придется формулу внедрять... Нет такой функции чтобы она запросы к определенному столбцу по времени фиксила? Я бы рад был а так времени жаль


Сделай чтобы в любом случае не более 1000б в сутки получали.
______________________
уф



Скиталец, делай еще одну запись. для каждого юзера отдельно. записывай какой бонус получил(количество баллов) и время. затем считай сколько баллов потратил юзер за сутки. если меньше чем бонус, отнимай у него разницу и удаляй запись. вроде логично все.


Автор темы
Да в таблице бонус одна запись она меняется каждые 100 сообщений, юзвер который забрал бонус попадает в запись и другие взять уже не могут, а насчет записи я бы так и сделал если бы все отнять хотел а мне нужно только то что он не успел потратить от этого бонуса за сутки...



запись в таблице bonus то у тебя одна получается? ты после активации бонуса, что с записью то делаешь этой?



так поле добавь в таблицу бонус и пиши туда время. время создания ключа. ну и удаляй. а вообще я не понял логики скрипта совсем