Вопрос из двух частей о создании простого счетчика страниц в PHP - PullRequest
0 голосов
/ 21 июня 2011

1) Как добавить простой счетчик страниц на страницу PHP и вставить значения в таблицу MySQL?Также мне нужно, чтобы значение таблицы MySQL обновлялось при каждом новом посещении.

2) Хитрость заключается в том, что страница PHP является шаблоном для множества целевых страниц, созданных пользователем.Например, я хотел бы, чтобы на каждой из этих страниц были свои отдельные счетчики:

examplesite.com/template.php?getvalue=bob

examplesite.com/template.php?getvalue=sam

examplesite.com/template.php?getvalue=samantha

У меня сложилось впечатление, что если я добавлю счетчик в файл "template.php", то он сложит всепосещения от каждого пользователя до общей суммы.Вывод, который я хотел бы получить, - чтобы каждый пользователь получал подсчет только для отдельной целевой страницы.

Итак, если в общей сложности 12 посещений распределены следующим образом:

examplesite.com/template.php?getvalue=bob  had 4 visits

examplesite.com/template.php?getvalue=sam  had 2 visits

examplesite.com/template.php?getvalue=samantha  had 6 visits

, тогда я бы хотел, чтобы счетчик страницы Боба читался как '4', Сэм как '2' иСаманта как «6».Правильно ли я полагаю, что если я просто добавлю счетчик в template.php, целевая страница каждого пользователя будет читаться как '12? 'У вас есть решение для простого способа исправить это?

Ответы [ 3 ]

2 голосов
/ 21 июня 2011

Все довольно просто:

pdo::prepare( 'UPDATE counter SET hits = hits+1 WHERE value = ?');
pdo::execute($_GET['getvalue']);

if ( pdo::rowCount() == 0 ) {
  pdo::prepare('INSERT INTO counter (?,0)');
  pdo::execute($_GET['getvalue']);
}
0 голосов
/ 21 июня 2011

Вы хотели бы иметь строку в своей таблице MySQL для каждого пользователя.Когда вы собираетесь обновить таблицу, обновите соответствующую строку для этого пользователя, прочитав getvalue.Затем сделайте то же самое для отображения счетчика страниц пользователя.

0 голосов
/ 21 июня 2011

Ну, так же, как вы можете разделить запросы для bob и sam при генерации страницы, вы можете сделать то же самое для счетчика?

Вы, вероятно, что-то сделаете с $_GET['getvalue'].Просто используйте это значение (экранированное, параметризованное и т. Д.) В запросе, чтобы обновить свой счетчик ....

 UPDATE yourtable SET count = count + 1 WHERE pagename = ?

, а затем связать getvalue ...

...