MySQL проблема!

1. Удаленный (25.01.2016 / 11:30)
Не могу как сообразить следуещее...

Есть таблица в которой есть колонка 'баланс' и колонка 'заработок в секунду' ну и прочие типа логин пароль и т.д..
Так вот нужно чтобы у всех пользователей каждую секунду обновлялся баланс в базе. Тоесть если сейчас заработок в секунду=100 то к значению баланс прибавляем 100

2. Сергей (25.01.2016 / 12:36)
1. MaZaHaKeR, используй значок "+" .

3. Кевин Митник (25.01.2016 / 13:31)
не эффективно гонять в базу каждую секунду на пользователя. лучше ищи другой способ

4. Dmitry Kokorin (25.01.2016 / 16:27)
1. MaZaHaKeR, хоть примерно принцип опиши, что где и для чего
Тогда и советы дельные будут

5. Удаленный (28.01.2016 / 13:05)
DimmoS (25 Января 2016 / 16:27)
1. MaZaHaKeR, хоть примерно принцип опиши, что где и для чего
Тогда и советы дельные будут
нужно каждую секунду записывать в базу записи для каждого пользователя а именно баланс их который увеличивается каждую секунду в зависимости от заработка в секунду

6. karpov-ml (28.01.2016 / 13:26)
Насколько я помню, крон можно ставить минимум на 1 минуту E

7. Удаленный (28.01.2016 / 14:07)
тады обясните мне как работает например вот эта игра http://marsgame.mobi

8. Вантуз-мен (28.01.2016 / 14:26)
7. MaZaHaKeR, маловероятно что там каждый раз пишется в базу
я бы сделал вывод с помощью jquery и аяксом писал бы в redis или mongo, а раз в 5-10 минут кроном записывал бы в бд, только те поля которые изменились в redis
Сделать не так уж и сложно

9. Удаленный (28.01.2016 / 14:35)
8. Vantuz, спс. Только вроде аякс работает если юзер в сети? а там пишется даж если пользователей нет онлайн. или может я ошибаюсь?

10. Вантуз-мен (28.01.2016 / 17:50)
Я подумал лучше всего в базе хранить число монет и время обновления, и вообще не дергать базу
высчитывать кол. монет только по времени к примеру в базе 0 монет и datetime 2016-01-27 15:14:14 человек входит на сайт берем 0 и начинает прибавлять яваскриптом
который нужен только для показа, если человек смотрит баланс то 0 + текущий счетчик
человек уходит с сайта и снова входит то берем 0 из базы высчитываем сколько времени прошло к примеру 2 мин и только в этом случае пишем в базу, это 120 монет и снова включаем счетчик
если человека нет на сайте то ничего не считает и пересчет произойдет только когда он вернется

11. Удаленный (29.01.2016 / 05:39)
Vantuz (28 Января 2016 / 17:50)
Я подумал лучше всего в базе хранить число монет и время обновления, и вообще не дергать базу
высчитывать кол. монет только по времени к примеру в базе 0 монет и datetime 2016-01-27 15:14:14 человек входит на сайт берем 0 и начинает прибавлять яваскриптом
который нужен только для показа, если человек смотрит баланс то 0 + текущий счетчик
человек уходит с сайта и снова входит то берем 0 из базы высчитываем сколько времени прошло к примеру 2 мин и только в этом случае пишем в базу, это 120 монет и снова включаем счетчик
если человека нет на сайте то ничего не считает и пересчет произойдет только когда он вернется

Спасибо Александр.

12. mihal (15.04.2016 / 20:41)
Столкнулся с проблемой.. в phpmyadmin у пользователя заменил пароль и теперь н теперь невозможно подключиться к Mysql, вхожу через root меняю заново пароль, перегружаю привелегии и опять та же картина, в чём проблема не могу понять, работаю на open server.. ыл в файле конфигурации, прописал логин пароль, не помогло... Никто не сталкивался с подобной проблемой?
Благодарю заранее..

13. /7o/loTeH4I1k (16.04.2016 / 10:00)
9. MaZaHaKeR, смотришь сколько секунд назад юзер был онлайн и его баланс. И от этого выщитываешь (сек*зар). Элементарно же.

12. mihal, сталкивался, просто падала авторизация в мускуле, потом проходило само (перезагрузки не помогали), как лечить не знаю

URL: https://visavi.net/topics/42821