Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 我如何收集我的网站信息';谁是访客?_Php_Javascript_Statistics - Fatal编程技术网

Php 我如何收集我的网站信息';谁是访客?

Php 我如何收集我的网站信息';谁是访客?,php,javascript,statistics,Php,Javascript,Statistics,有没有办法储存: 访问者的IP地址 访问者什么时候访问我的站点 他们参观了多少次 我知道有一种方法可以在不使用PHP的情况下实现这一点,只需使用Javascript和一些文本文件 在PHP中如何实现这一点?使用纯javascript无法在客户端计算机上存储任何内容。它在沙盒环境中运行,不允许您执行此类任务。您可以向服务器端脚本发送AJAX请求,该脚本将执行必要的步骤来持久化数据。当然,另一种选择是使用类似这样的服务,通过在页面末尾包含一个简单的脚本来保存有关站点访问的统计信息。如果要写入服务

有没有办法储存:

  • 访问者的IP地址
  • 访问者什么时候访问我的站点
  • 他们参观了多少次
我知道有一种方法可以在不使用PHP的情况下实现这一点,只需使用Javascript和一些文本文件


在PHP中如何实现这一点?

使用纯javascript无法在客户端计算机上存储任何内容。它在沙盒环境中运行,不允许您执行此类任务。您可以向服务器端脚本发送AJAX请求,该脚本将执行必要的步骤来持久化数据。当然,另一种选择是使用类似这样的服务,通过在页面末尾包含一个简单的脚本来保存有关站点访问的统计信息。

如果要写入服务器上的文件,则需要某种服务器端处理。
如果您想要客户端存储,它是一个相对较新的功能(HTML5),但不允许直接访问文件系统。

在PHP中,如果我理解您正在尝试做什么,那么您正在尝试完成的是非常容易的

要获取访问者IP地址,只需使用$\u服务器superglobal,如下所示:

<?php $_SERVER['ip_address']; ?> 

然后,为了获得时间,您只需使用:

<?php time(); ?> 

现在,更棘手的是,他们访问了多少次。您需要将上述内容放入数据库,例如mysql

创建包含以下列的数据库架构:id、ipAddress、time和NumofVisitions。 您需要在网页的开头有一些php逻辑来检查用户的IP地址是否已经在数据库中,如果已经在数据库中,则增加numofvists列。显然,您还需要将time()的输出记录到time列中

本质上,这就是如何在PHP中实现所要求的。 希望这有帮助:)

这是一项非常简单的任务

您可以在php的帮助下实现这一点。您可以获得有关访问您的站点的客户的多种类型的信息。您可以了解该ip地址的ip地址、日期、时间、操作系统、浏览器、isp以及更多信息。你必须使用php和mysql

首先在mysql中创建一个表

create_table_track.php

<?php

$server = "localhost";
$username = "username";
$password = "password";
$database = "database name";

$connId = mysql_connect($server,$username,$password) or die("Cannot connect to server");
$selectDb = mysql_select_db($database,$connId) or die("Cannot connect to database"); 

$result = "CREATE TABLE track(
`id` int(6) NOT NULL auto_increment,
`tm` varchar(20) NOT NULL default '',
`ref` varchar(250) NOT NULL default '',
`agent` varchar(250) NOT NULL default '',
`ip` varchar(20) NOT NULL default '',
`ip_value` int(11) NOT NULL default '0',
`domain` varchar(20) NOT NULL default '',
`host_name` varchar(20) NOT NULL default '',
`tracking_page_name` varchar(10) NOT NULL default '',
 UNIQUE KEY `id` (`id`)
 ) ENGINE=MyISAM DEFAULT CHARSET=latin1 "; 
 
if (mysql_query($result))
{
 print "Success in TABLE creation!......";
} 
else 
{
die('MSSQL error: ' . mssql_get_last_message());
}


?>'
<html>
<?php


// fill in your databasa data here!
$server = "localhost";
$username = "username";
$password = "password";
$database = "database name";

$connId = mysql_connect($server,$username,$password) or die("Cannot connect to server");
$selectDb = mysql_select_db($database,$connId) or die("Cannot connect to database");


$tracking_page_name="example";
$ref=$_SERVER['HTTP_REFERER'];
$agent=$_SERVER['HTTP_USER_AGENT'];
$ip=$_SERVER['REMOTE_ADDR'];
$host_name = gethostbyaddr($_SERVER['REMOTE_ADDR']);
$strSQL = "INSERT INTO track(tm, ref, agent, ip, tracking_page_name, host_name)    VALUES(curdate(),'$ref','$agent','$ip','$tracking_page_name','$host_name')";
$test=mysql_query($strSQL);

?>
</html>
<html>
<body>
<?php

$con = mysql_connect("localhost","user name","password");
mysql_select_db("database name", $con) or die( "Unable to select database");
$query="SELECT * FROM track";
$result=mysql_query($query);
$num=mysql_numrows($result);
mysql_close();
?>
<table border="1" cellspacing="2" cellpadding="2">
<tr>
<th><font face="Arial, Helvetica, sans-serif">id</font></th>
<th><font face="Arial, Helvetica, sans-serif">time</font></th>
<th><font face="Arial, Helvetica, sans-serif">http referer</font></th>
<th><font face="Arial, Helvetica, sans-serif">user agent</font></th>
<th><font face="Arial, Helvetica, sans-serif">ip address</font></th>
<th><font face="Arial, Helvetica, sans-serif">ip value</font></th>
<th><font face="Arial, Helvetica, sans-serif">domain</font></th>
<th><font face="Arial, Helvetica, sans-serif">tracking_page_name</font></th>
<th><font face="Arial, Helvetica, sans-serif">Host_name</font></th>
</tr>

<?php
$i=0;
while ($i < $num) {

$f1=mysql_result($result,$i,"id");
$f2=mysql_result($result,$i,"tm");
$f3=mysql_result($result,$i,"ref");
$f4=mysql_result($result,$i,"agent");
$f5=mysql_result($result,$i,"ip");
$f6=mysql_result($result,$i,"ip_value");
$f7=mysql_result($result,$i,"domain");
$f8=mysql_result($result,$i,"tracking_page_name");
$f9=mysql_result($result,$i,"host_name");
?>

<tr>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f1; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f2; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f3; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f4; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f5; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f6; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f7; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f8; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f9; ?></font></td>
</tr>

<?php
$i++;
}
?>
</body>
</html>'
就像他说的没有PHP!!(仅限文本文件)我更喜欢使用带有回调函数和Web服务(如ip-api.com或ipinfo.io)的jsonp

function fire() {
    var url = "http://ipinfo.io/json?callback=func";
    var script = document.createElement('script');
    script.src = url;
    script.async = true;
    document.getElementsByTagName('head')[0].appendChild(script);
}

function func(response) {
    alert(response.hostname); // for example hostname
}

document.onload = fire();
代替response.hostname,您可以提醒服务返回的所有内容

{
  "ip": "178.165.128.3",
  "hostname": "178.165.128.3.wireless.dyn.drei.com",
  "city": null,
  "region": null,
  "country": "AT",
  "loc": "47.3333,13.3333",
  "org": "AS12635 Hutchison Drei Austria GmbH"
}
你过得去的时间

var d = new Date();
var n = d.getTime();

还有我会存储在本地存储中的访客访问次数。

+1谷歌分析-这是当今活动跟踪的黄金标准。-1谷歌分析-这是当今活动最好的间谍机器。询问Facebook和/或剑桥分析。