На мно­гих ре­сур­сах ста­ло по­пу­ляр­ным раз­ме­щать ин­фор­ма­цию по ти­пу "на на­шем сайте за­ре­ге­стри­ро­ва­но 17.128.345 поль­зо­ва­телей", ли­бо "мы предо­став­ляем 6990.1569 МБ для ва­ше­го по­что­во­го ящи­ка". При чем дан­ная ин­фор­ма­ция об­нов­ляет­ся на стра­ни­це в ре­аль­ном вре­ме­ни (напри­мер - gmail, vkontakte). Дан­ный трюк яв­ляет­ся пер­вокласс­ной завле­ка­лов­кой, ко­то­рая ра­с­чи­та­на преж­де всего на стад­ный инстинкт ("а я шо, ле­вый?") или при­род­ную жад­ность (ра­ци­о­наль­ность, ага) че­ло­ве­ка - в за­ви­си­мо­сти от смыс­ла тек­ста.На сво­ем сайте подоб­ное мож­но ре­а­ли­зо­вать дву­мя спосо­ба­ми. Пер­вый это AJAX. Ва­ри­ант до­ста­точ­но не­пло­хой, точ­ный, но со­зда­ет лиш­ние запро­сы к сер­ве­ру. И вто­рой - с по­мо­щью JS. Тут то­же есть два пу­ти: если ин­кре­мен­тор ста­ти­че­ский (к при­ме­ру каж­дую ми­ну­ту до­бав­лять поль­зо­ва­те­лю в ак­каунт по 10 КБ без из­ме­не­ний), то до­ста­точ­но од­но­го JS скрип­та. Если же он ди­на­ми­че­ский, то тут не обой­тись без server-side, ведь при его из­ме­не­нии (пере­счет ко­ли­че­ства реги­стра­ций, уста­нов­ка еще па­ру де­сят­ков дис­ков в мас­сив) бу­дет пол­но­стью пере­счи­ты­вать­ся чис­ло, что бу­дет до­ста­точ­но за­мет­ным, осо­бен­но при умень­ше­нии ко­эф­фи­ци­ен­та. Так вот, я на­пи­сал не­большой хел­пер, ко­то­рый по­мо­жет без лиш­них уси­лий ге­не­ри­ро­вать подоб­ные ти­ке­ры, хра­ня про­ме­жу­точ­ный ре­зультат в файло­вом ке­ше. Функ­ция counter_js ($increment, $routdto, $update_rate), где $increment - float, ну или integer, ко­то­рый до­бав­ляет­ся к те­ку­ще­му ре­зульта­ту каж­дую се­кун­ду; $routdto - ко­ли­че­ство чи­сел по­сле за­пя­той в ре­зульта­те; $update_rate - вре­мя об­нов­ле­ния ке­ша в се­кун­дах. При­мер мож­но по­смот­реть тут, а ис­ход­ный код тут. Все эле­мен­та­но про­сто.