大家进来看看!需要你们的帮助!

samyan 2004-08-09 01:30:23
有两个页面a.asp b.asp
现在想实现这样一个功能:
当打开这个b.asp时a.asp自动读取b.asp的环境变量,如ip,os等等,然后再存入数据库中。

条件是:1.b中不使用include a.asp,且不通过点击链接到达a.asp
2.a,b不在一个站点内


应该怎样实现?这其实是一个统计网站常使用的方法,但是我实在不知道应该怎样实现!!!!!!!!很多统计网站就是用<script src="http://网站名/mystat.asp"></script>实现,那mystat.asp又应该怎样写呢???
...全文
347 点赞 收藏 16
写回复
16 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
Jaron 2004-08-11
http://samyan.xfvip.com/count/count.asp?Width=1024&Height=768&color=32&referer=http://community.csdn.net/Expert/topic/3255/3255999.xml?temp=.8528711

这样测试一下,看有无问题。
回复
samyan 2004-08-10
TMD我要是只去获得分辨率及色彩,都能存进去,就TMD来路referrer,一加上他就存不进去了,郁闷致死!
回复
samyan 2004-08-10
我在要统计的页面上放了以下代码:
<Script language="javascript" src="http://samyan.xfvip.com/count/stat.asp"></Script>


然后stat.asp是这样的
document.write("<script src=http://samyan.xfvip.com/count/count.asp?Width="+escape(screen.width)+"&Height="+escape(screen.height)+"&color="+escape(screen.colordepth)+"&referer="+escape(document.referrer)+"></script>");


count.asp是这样的
<% dim times,ipaddr,os,navigater,screenwidth,screenheight,color,referer
referer=Request.QueryString("referer")
screenwidth=Request.QueryString("width")
screenheight=Request.QueryString("height")
color=Request.QueryString("color")
referer=Request.QueryString("referer")
mysql="select * from ipbook"
set rs=server.CreateObject("ADODB.recordset")
rs.open mysql,conn,3,3
rs.addnew
rs("referer")=referer
rs("screenwidth")=screenwidth
rs("screenheight")=screenheight
rs("color")=color
rs.update
rs.close
但是怎么也存不进去??为什么啊 ?这个问题我已经捆饶还几天了
回复
Jaron 2004-08-09
<script src="a.asp?id=1">

a.asp
----------
var style='text';
var url='/stat/';
var uid='1';
_dwrite("<script language=javascript src="+url+"/stat.asp?style="+style+"&referer="+escape(document.referrer)+"&screenwidth="+(screen.width)+"&userid="+(uid)+"></script>");
function _dwrite(string) {document.write(string);}

b.asp
---------
接受a.asp的querystring,并用 Request.ServerVariables 获取一些信息,一起记录进数据库。
回复
超级大笨狼 2004-08-09
想办法把这些提交过去,就可以了。
比如打开一个window在两公里以外
或者xmlhttp
参考
<SCRIPT LANGUAGE="JavaScript">

function getData()
{
var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");

// 异步调用
xmlhttp.onreadystatechange = function()
{
if (xmlhttp.readyState == 4) // 调用完毕
{
if (xmlhttp.status == 200) // 加载成功
{
var xmldoc = xmlhttp.responseXML;
var root = xmldoc.documentElement;

alert (xmldoc.xml);
}
}
}

var url = 'xml.asp';
xmlhttp.open("get", url, true);
xmlhttp.send();
}

</SCRIPT>


<BODY>

异步调用 xmlhttp 取后台数据
<input type="button" value="GetData" onclick="getData()">

<%
dim i, xml

xml = "<?xml version='1.0' encoding='gb2312' ?>"
xml = xml & "<data>"

for i = 1 to 50
xml = xml & "<record>记录" & i & "</record>"
next

xml = xml & "</data>"

response.ContentType = "text/xml"
response.write xml
%>
回复
samyan 2004-08-09
很多的流量统计网站都是那样实现的,只要有人能做出来,他就有答案!谢谢各位的鼎立支持!
回复
whyslr 2004-08-09
帮顶一下啦。这个应该还要用到分析数据包之类的数据库吧?不然就不可能达到站外数据统计啦。
回复
samyan 2004-08-09
我知道,Request.ServerVariables我会用,问题是我用Request.ServerVariables得到的不是b的参数,而是a的参数!该怎么办啊?
回复
孟子E章 2004-08-09
要什么变量可以这样找

<%
For Each i In Request.ServerVariables
Response.Write "<li> Request.ServerVariables(""" & i & """) = " & Request.ServerVariables(i)
Next
%>
回复
samyan 2004-08-09
有没有人啊?
回复
samyan 2004-08-09
up
回复
samyan 2004-08-09
我知道mystat.asp是js脚本,那么怎样获的b的环境变量啊,我还是不太懂你的意思!再赐教!
回复
孟子E章 2004-08-09
你必须输出js脚本,就是说:http://网站名/mystat.asp打开后的源代码是合法的js脚本
回复
okdw 2004-08-09
<script src="http://网站名/mystat.asp?a=4"></script>
要不就用web service
回复
samyan 2004-08-09
net_lover(孟子E章) 能不能具体说说啊,拜托了,老板急着要啊!
回复
孟子E章 2004-08-09
mystat.asp:


Response.Write "document.write('xxxxxx')" & vbCrLf
Response.Write "document.write('xxxxxx')" & vbCrLf
回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2004-08-09 01:30
社区公告
暂无公告