Home > Backend Development > PHP Tutorial > New discussion on using PHP to record_PHP tutorial

New discussion on using PHP to record_PHP tutorial

WBOY
Release: 2016-07-13 17:25:15
Original
924 people have browsed it

If you use a good logging analyzer, like Analog or something similar, it's not too difficult to figure out where the clicks to your site are coming from and which pages have been viewed.

But if you want to stop a running report, you have to take a different route

About six months ago, I was importing Apache log files into a SQL database and then running It does a special query.

Unfortunately, this requires me to manually extract these log files one by one, twist the format a little, and then output. I want something better. - Something that can be continuously updated and give me information about what content is viewed, browser and platform statistics, and trends over time.

The solution version of this article can help me a lot It's been working well for several years. I raised the importance of it when we built SourceForge via the SourceForge system, all records and traces through the SourceForge.net website pipeline, including web visitors at this URL and every page in the 1200 project Viewers.

Basically, every logging action I have to do is add a column to a database table (in this case it's web visitors, but you can log banner ads from other URLs Increased viewers, number of clicks, individual clicks, etc.)

This is the data table structure I am using on SourceForge:

create table activity_log (
day integer DEFAULT 0 NOT NULL,
hour integer DEFAULT 0 NOT NULL,
group_id integer DEFAULT 0 NOT NULL,
browser varchar(8) DEFAULT OTHER NOT NULL,
ver float(10) DEFAULT 0.00 NOT NULL ,
platform varchar(8) DEFAULT OTHER NOT NULL,
time integer DEFAULT 0 NOT NULL,
page text,
type integer DEFAULT 0 NOT NULL


);

If you are trying to record multiple URLs, the group_id field can be used. Just assign a different group_id to each URL and pass it in the URL address (shown below).

type is not used in these examples, but you can use it to track different types of behavior, such as the number of clicks on ads, the number of clicks from other URLs, etc.

Browser, ver, platform can all be sent from your browser to the website server. One step is to transfer the data into the data table. If everything in the box is available through PHP and all other different websites , that's a perfect world. Unfortunately, I have a lot of servers scattered across the country, and I have to collect every page browsing information from every server 24 hours a day.

So I A little trick is necessary to use a 1x1 pixel GIF. I have a GIF on each server page that looks like this:



There are four elements in this graphic

Remote web server
Web browser (user who visits the website)
Central logging server
Central database server

So when the user visits the website, they get a web page to use, The browser asks the server center to see a 1x1 gif image. The server center records that information to make product reporting easier.

Reports

Just write some simple SQL Generate all the data
Use the ShowResults() function to display it. You can also use graphs to represent it (refer to the prior article)

Now I can execute my statistical report at any time

Sample SQL to run reports
Page Views By Day

SELECT day, count(*)
FROM activity_log
WHERE type=0 GROUP BY day

Page Views By Browser

SELECT browser, count(*)
FROM activity_log
WHERE type=0 GROUP BY browser

Page Views By Browser Version

SELECT browser, ver, count (*)
FROM activity_log
WHERE type=0 GROUP BY browser, ver

Page Views By Platform

SELECT platform, count(*)
FROM activity_log
WHERE type=0 GROUP BY platform

Here.zip contains browser detection and database abstraction libraries.

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/532081.htmlTechArticleIf you use a good log analyzer, like Analog or something similar, then figure out your It's not too difficult to know where the website clicks come from and which pages were viewed. But...
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template