| Брояч |
| Автор |
iwanov (22.10.2007 10:47) |
 |
съобщение до автора |
|
| Погледнат |
1246 пъти |
 |
добави към любими |
|
| Оценка |
 |
 |
добави коментар |
|
| Гласове |
-- |
 |
изпрати на приятел |
|
| Коментари |
(0) |
 |
абонирай се за PHP |
|
|
|
|
|
|
|
| |
|
Брояча работи с MySQL база данни. Ето я и нея.
CODE1
2
3
4
5
6
7
8
9
10
11
12
| CREATE TABLE counthits (
id int(11) NOT NULL auto_increment,
time int(14) default '0',
userstoday int(10) default '0',
start varchar(5) default 'no',
KEY id (id)
) TYPE=MyISAM;
CREATE TABLE countip (
ip varchar(255) default '',
time int(14) default '0'
) TYPE=MyISAM; |
connect.php
CODE1
2
3
4
5
6
7
8
| <?
$database="DB";
$sqlhost="localhost";
$sqluser="user";
$sqlpass="password";
mysql_connect($sqlhost,$sqluser,$sqlpass) OR DIE("1");
mysql_select_db($database) OR DIE("1");
?> |
counter.php
CODE1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
| <?
include("connect.php");
$timer = "300";
$time = time();
$date = date("dmY",$time);
$day = date("d",$time);
$ip = $REMOTE_ADDR;
$result = mysql_query("SELECT * FROM counthits ORDER BY time DESC LIMIT 0,1");
$row = mysql_fetch_array($result);
$olddate = date("dmY",$row[time]);
$oldday = date("d",$row[time]);
if($olddate != $date) {
mysql_query("insert into counthits (time,userstoday) values ('$time', '1')");
}
mysql_query("delete FROM countip WHERE FROM_UNIXTIME(time, '%d%m%Y') != '$date'");
$result = mysql_query("SELECT * FROM counthits ORDER BY time DESC LIMIT 0,1");
$hits = mysql_fetch_array($result);
$id = $hits[id];
$result1 = mysql_query("SELECT * FROM countip WHERE ip = '$ip'");
$row = mysql_fetch_array($result1);
$olddate = $row[time];
$oldtime = $row[time];
if($row[ip] == "") {
mysql_query("insert into countip (ip, time) values ('$ip', '$time')");
$userstoday = $hits[userstoday]+1;
mysql_query("update counthits set userstoday='$userstoday' WHERE id like '$id'");
} else {
$dif = $time-$oldtime;
if($dif > $timer) {
$userstoday = $hits[userstoday]+1;
mysql_query("update counthits set userstoday='$userstoday' WHERE id like '$id'");
mysql_query("update countip set time = '$time' WHERE ip like '$ip'");
} else {
}
}
$result = mysql_query("SELECT * FROM counthits WHERE FROM_UNIXTIME(time, '%d%m%Y') like '$date'");
$hits = mysql_fetch_array($result);
$userstoday = $hits[userstoday];
$result1 = mysql_query("SELECT SUM(userstoday) as sum FROM counthits");
$total = mysql_fetch_array($result1);
$userstotal = $total[sum];
?> |
stats.php
CODE1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
| <table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td>Today </td>
<td align="right">
<?
include("connect.php");
include("counter.php");
$userstoday = number_format($userstoday, 0, '', '.');
echo($userstoday);
?>
</td>
</tr>
<tr>
<td>Total </td>
<td align="right">
<?
$userstotal = number_format($userstotal, 0, '', '.');
echo($userstotal);
?>
</td>
</tr>
</table>
<?
mysql_close();
?> |
counter_admin.php
CODE1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
| <link rel="stylesheet" href="stylesheet.css" type="text/css">
<?
include ("connect.php");
$spacer = "<hr size='1'>";
$time = time();
$today = date("d. F Y",$time);
$date = date("mY",$time);
$date_today = date("dmY",$time);
echo "<span class='headline'>Hits month:</span>";
echo "$spacer";
$result = mysql_query("SELECT * FROM counthits GROUP BY FROM_UNIXTIME(time, '%m%Y')");
while ($row = mysql_fetch_array($result)){
$month_spec = date("mY",$row[time]);
$month = date("F, Y",$row[time]);
$result1 = mysql_query("SELECT SUM(userstoday) as sum FROM counthits WHERE FROM_UNIXTIME(time, '%m%Y') like '$month_spec' AND start like 'no'");
$row1 = mysql_fetch_array($result1);
echo "<span class='time'>$month</span> - $row1[sum]";
echo "<br>";
}
echo "$spacer";
if (!$limit){
$limit = "10";
}
echo "<span class='headline'>Hits a day last $limit days:</span>";
echo "$spacer";
$result = mysql_query("SELECT * FROM counthits WHERE start like 'no' ORDER BY time DESC LIMIT 0,$limit");
while ($row = mysql_fetch_array($result)){
$time2 = date("d. F Y",$row[time]);
echo "<span class='time'>$time2</span> - $row[userstoday]";
echo "<br>";
}
echo "$spacer";
echo "<span class='headline'>Days with most hits top $limit:</span>";
echo "$spacer";
$result = mysql_query("SELECT * FROM counthits WHERE start like 'no' ORDER BY userstoday DESC LIMIT 0,$limit");
$i = "1";
while ($row = mysql_fetch_array($result)){
$time = date("d. F Y",$row[time]);
echo "$i | <span class='time'>$time</span> - $row[userstoday]";
echo "<br>";
$i++;
}
echo "$spacer";
echo "<span class='headline'>Average without todays hits:</span>";
echo "$spacer";
$result = mysql_query("SELECT * FROM counthits WHERE start like 'no' AND FROM_UNIXTIME(time, '%d%m%Y') not like '$date_today'");
$amount = mysql_num_rows($result);
$result = mysql_query("SELECT SUM(userstoday) as sum FROM counthits WHERE start like 'no' AND FROM_UNIXTIME(time, '%d%m%Y') not like '$date_today'");
$row = mysql_fetch_array($result);
$hits = ceil("$row [sum] / $amount");
echo "$hits pr dag";
echo "$spacer";
echo "<span class='headline'>Today $today:</span>";
echo "$spacer";
$result = mysql_query("SELECT * FROM counthits WHERE FROM_UNIXTIME(time, '%d%m%Y') like '$date_today'");
$hits = mysql_fetch_array($result);
echo $hits[userstoday];
echo "$spacer";
echo "<span class='headline'>Choose amount of days:</span>";
echo "$spacer";
echo "<a href='?limit=10'>10 days</a>";
echo " | ";
echo "<a href='?limit=20'>20 days</a>";
echo " | ";
echo "<a href='?limit=30'>30 days</a>";
mysql_close();
?> |
| За автора: iwanov |
|
Казвам се Галин Иванов и обичам да се занимавам с програмиране и като цяло с компютри. Разбирам от HTML, CSS, PHP и MySQL. Старая се да научавам постоянно нови неща от IT сферата. |
| |
|
| 1 посетител чете този скрипт (0 потребители и 1 гост) |
|
|
Активни потребители:
---
|
| |
|
|
|
|