Как вариант Вам можно создать поле в БД со временем последней активности!
ALTER TABLE `profile` ADD `last_active_time` int(11)
Когда пользователь логинится, добавить в запрос:
mysql_query( " update profile set user_status='Online', last_active_time = UNIX_TIMESTAMP() where user_email='".$_POST['email']."' and user_password='".$_POST['password']."' ");
Ну а там где вызов количества юзеров в онлайне, добавить в условие "AND last_active_time > (UNIX_TIMESTAMP()-тут количество секунд)"
Конечно в таком случае при каждом действии юзера придется обновлять запись в БД:
mysql_query("UPDATE profile SET last_active_time = UNIX_TIMESTAMP() WHERE тут словия идентификации юзера");
Здравствуйте. Мне очень необходима помощь знающих людей.
Есть проблема хранения 3000 переменных, каждая переменная принимает значение 0 или 1. Данные настройки хранятся в БД.
Я додумался до четырёх решений.
1. Хранить всё как элементы в Массива, серилизовать, сжимать и хранить в БД как текст.
2. Хранить всё как Бинарное число. Редактировать как не знаю.
3. Хранить как Десятичное число. Редактировать как не знаю.
4. Хранить как Строку. Редактировать как строку.
5. Хранить каждую переменную отдельно в БД.
Смог реализовать первый вариант, но получилась строка в 6000 символов. Это очень много, если учесть что первоначально переменных 3000. Первый реализованный вариант мне не нравится, хоть он и является очень простым для работы.
Могли бы вы подсказать более быстрые и меньшие по размеру решения?
Пожалуйста, оцените решения по скорости работы и по количеству занимаемого места.
Честно говоря я бы воспользовался вариантом номер 5.
БД на то и сеть База Данных, чтобы хранить данные в любом виде и сколько нужно! Тем более 3000 записей для БД - это семечки... (Добавление)
По поводу скорости - тут уж смотря какой движок используется + кэширование!
Короче тут и скорость работы и размер занимаемой памяти зависит от того, как Вы настроите саму БД!
При создании класса - лучше инициализировать переменные в конструкторе!
И кстати перегружать функцию rand() не стоит, хоть она и в классе! Лучше переназвать!
Товарищи, как возможно сделать так, чтобы оно не "трогало" картинки и ссылки на "http://mysite.ru"?
Для того чтобы в приведенном регулярном выражении отключить автоматическое формирование гиперссылок для тех URL-адресов которые уже указывают на перенаправляемый домен - возможно использовать предварительный негативный просмотр вперед с фиксированным шаблоном этого домена - то есть начало регулярного выражения можно модифицировать примерно так (https?:\/\/(?!mysite\.ru)[-A-Z0-9.]+(?:
Спасибо за понятный ответ!
Конечно интересно на сколько такая конструкция замедляет вывод текста!
Этот вариант отлично работает со ссылками!
Только одно НО! Товарищи, как возможно сделать так, чтобы оно не "трогало" картинки и ссылки на "http://mysite.ru"?
Спасибо огромное заранее!
На место дефисов такую регистрозависимую регулярку:
>[^а-яА-Я]*((?:[А-Я][а-я]+){2,})[^а-яА-Я]*<
Сматчатся те вещи, в которых более одной фамилии.
Спасибо конечно! Но не совсем то что нужно!
Интересует именно поиск например фамилии "Петров" в:
"<td>СидоровПетров</td>" или "<td>ПетровСидоров</td>" или просто "<td>Петров</td>"
То есть может быть как угодно! И важно что вставляется между ""<td></td>!
Я так понял что вот так не получится "<td>.*?Петров.*?</td>"
Привет всем!
Уж так получилось, что кое-какая информация пишется в файл и причем в одну строку!
Вытащив эту строку, мне нужно получить информацию по рег. выражению!
Вот что имеется:
На том месте, где много дефисов должна становится фамилия человека! Но тут возникла проблема!
Скрипты которые добавляют записи работают криво, и если там становится 2 фамилии, то они могут стать так: "ИвановСидоров" или "СидоровИванов" или может бить просто одна какая-то!
То есть мне нужно узнать, сколько таких вот совпадений по каждой из фамилий.. Но как я уже упоминал, фамилия может быть не одна (Всего около 20-ти фамилий)!
Пробовал так:
- не работает! Практически все что мне нужно, так указать что перед фамилией или после нее может быть еще одна или может быть пусто!
Всем заранее Спасибо за помощь!
Подскажите пожалуйста, каким образом возможно например для переменной "с" поставить значение не 3 а 8? То есть нужно как-то скриптом переписать число это!
Всем заранее Огромное Спасибо!