怎么测试从JS传过来的参数我的页面已经正确接收并存进了数据库?

joanagle 2011-10-11 10:16:42
最近在开发一个流量统计系统,主要有个JS文件是嵌入到要统计的页面中,这个JS文件主要是获取客户端的一些基本信息,比如屏幕大小,屏幕分辩率,当前用户正在访问的页面等。
我的JS文件如下:

var pcstj;
pcstj='&atj='+escape(document.referrer)+'&btj='+escape(document.location)+'&ctj='+escape(navigator.userAgent'&dtj='+screen.colorDepth+'&etj='+screen.width+'*'+screen.height+'&ftj='+navigator.systemLanguage;

//alert(pcstj);

document.write('<img scr="images/pics.gif" border=1 width=2 heigth=2>');
document.write('<img src="goStat.jsp?id=1'+pcstj+'" border=0 width=0 height=0 />');

这个JS文件经过ALERT所有的参数值是正确的。

然后我的统计系统中,有个专门接收JS传过来的参数的页面(goStat.jsp)。但是不管我怎么刷新嵌入了JS的页面,数据都没有进到数据库中来。

接收页面(goStat.jsp)的内容如下:
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*,java.util.*" pageEncoding="UTF-8"%>
<%@ page import = "gzbd.picopcs.*" %>

<%
Connection con = DBStat.getConn() ;
Statement stmt=con.createStatement();
ResultSet rs =null;

String id=request.getParameter("id");
String Ip=request.getRemoteAddr();
String referrer = request.getParameter("atj");
if (referrer==null)
referrer="直接输入";
else if (referrer.equals(""))
referrer="直接输入";
String location=request.getParameter("btj");
String UserAgent = request.getParameter("ctj");
String ScreenColor= request.getParameter("dtj");
String ScreenSize = request.getParameter("etj");
String ScreenLanguage = request.getParameter("ftj");

String sql="insert into pcs_data(pcs_VisitIP, pcs_VisitFPage, pcs_VisitPage, pcs_VisitScreenColor,pcs_VisitScreenSize, pcs_VisitLanguage"+
") values('"+Ip+"','"+referrer+"','"+location"','"+ScreenColor+
"','"+ScreenSize"','"+ScreenLanguage+"')'";

stmt.executeUpdate(sql);

DBStat.closeResource(stmt, rs, con);
%>

测试过DBStat连接数据库是正常的,我其它页面连接数据库并显示出来是没有问题的。

现在问题是怎么测试这个页面呢?还是要把这个页面嵌入到我的其它显示页面中去?

...全文
251 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
joanagle 2011-11-02
  • 打赏
  • 举报
回复
我的问题已经解决了,谢谢大家的热心回答!
joanagle 2011-11-02
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 wolf863292 的回复:]
goStat.jsp 中的代码 就是负责执行数据库操作的,为什么不想转到这个页面呢?
这种结构还是比较正确的。即,不同功能放在不同的文件中。
你的统计页面专门负责显示,而goStat.jsp专门负责操作数据库,这样是正确的。不要把显示和数据库的代码放到一个文件中。

即使你使用servlet之类的技术,也还是要转到其它文件去操作数据库的。
即使你不转到goStat.jsp,也要转到goS……
[/Quote]
谢谢
CloudX2019 2011-11-02
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 joanagle 的回复:]

我的问题已经解决了,谢谢大家的热心回答!
[/Quote]
记得结贴,LZ
wolf863292 2011-10-12
  • 打赏
  • 举报
回复
goStat.jsp 中的代码 就是负责执行数据库操作的,为什么不想转到这个页面呢?
这种结构还是比较正确的。即,不同功能放在不同的文件中。
你的统计页面专门负责显示,而goStat.jsp专门负责操作数据库,这样是正确的。不要把显示和数据库的代码放到一个文件中。

即使你使用servlet之类的技术,也还是要转到其它文件去操作数据库的。
即使你不转到goStat.jsp,也要转到goStat.servlet(仅简单举例,不要深究)。
不要拘泥与形式。jsp就是servlet。
CloudX2019 2011-10-12
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 joanagle 的回复:]
呵呵,我是菜鸟,不太会用servlet
[/Quote]

悲催..
CloudX2019 2011-10-11
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 joanagle 的回复:]
引用 5 楼 wolf863292 的回复:
<%
System.out.print(sql);
%>
看看sql是否正确。


谢谢,通过看SQL才发现原来我有个字段名写错了

但是还有个问题,怎么在不执行goStat.jsp页面的情况下,将数据插入数据库?因为我这个goStat.jsp页面是没有内容的,只是接收参数并将参数存入数据库的
[/Quote]

用servlet不行么?一定要用jsp啊...
chen_yunxing2011 2011-10-11
  • 打赏
  • 举报
回复
o 吃饭了
你的访问代码木有放出来。

ajax访问会有缓存问题,就前面说的方式解决

还有好似是可以用cookie + 拦截器做

吃饭!
chen_yunxing2011 2011-10-11
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 joanagle 的回复:]

引用 5 楼 wolf863292 的回复:
<%
System.out.print(sql);
%>
看看sql是否正确。


谢谢,通过看SQL才发现原来我有个字段名写错了

但是还有个问题,怎么在不执行goStat.jsp页面的情况下,将数据插入数据库?因为我这个goStat.jsp页面是没有内容的,只是接收参数并将参数存入数据库的
[/Quote]

你之前是用什么访问goStat.jsp的呢?
joanagle 2011-10-11
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 wolf863292 的回复:]
<%
System.out.print(sql);
%>
看看sql是否正确。
[/Quote]

谢谢,通过看SQL才发现原来我有个字段名写错了

但是还有个问题,怎么在不执行goStat.jsp页面的情况下,将数据插入数据库?因为我这个goStat.jsp页面是没有内容的,只是接收参数并将参数存入数据库的
淡定的峰哥 2011-10-11
  • 打赏
  • 举报
回复
你光刷新有什么用
他是个连接,你要点击这个连接,才能根据这个url访问后台的
chen_yunxing2011 2011-10-11
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 joanagle 的回复:]

引用 3 楼 chen_yunxing2011 的回复:
其实不明白为什么不在过滤器中做额


过滤器怎么做呢?
[/Quote]

额 你用几个那几个参数不知道在过滤器中还能否拿得到
joanagle 2011-10-11
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 chen_yunxing2011 的回复:]
其实不明白为什么不在过滤器中做额
[/Quote]

过滤器怎么做呢?
wolf863292 2011-10-11
  • 打赏
  • 举报
回复
<%
System.out.print(sql);
%>
看看sql是否正确。
chen_yunxing2011 2011-10-11
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 joanagle 的回复:]

引用 1 楼 chen_yunxing2011 的回复:
会不会是缓存·····
每次提交的链接是否是相同的?

是相同的
[/Quote]

那带个随机参数咯
缓存机制记得也可以定制不过不知道哪里了
chen_yunxing2011 2011-10-11
  • 打赏
  • 举报
回复
其实不明白为什么不在过滤器中做额
joanagle 2011-10-11
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 chen_yunxing2011 的回复:]
会不会是缓存·····
每次提交的链接是否是相同的?
[/Quote]
是相同的
chen_yunxing2011 2011-10-11
  • 打赏
  • 举报
回复
会不会是缓存·····
每次提交的链接是否是相同的?
joanagle 2011-10-11
  • 打赏
  • 举报
回复
呵呵,我是菜鸟,不太会用servlet
C#网页版+客户端版聊天软件源码分享(C#+长连接+Sqllite数据库实现) 今天我给大家分享一个聊天程序的源码。 网页版加客户端版并存,可以互通 我相信对大家学习和扩展这一块知识是很有用的。 我们先来看下软件结构 一个Web版一个网页版,而客户端是连接的网页的 http://localhost:53947/wwwroot/Lesktop 这个路径 http://localhost:53947/wwwroot/这一部分是网页的地址,大家可以根据自己配置情况行修改 然后浏览一下Default.aspx页面如下 这是负面版的,客户端的也是一样的,我们先来注册 一个账户 在这里我们注册两个账户还有一个是text用来聊天对话使用 注册的方法是一样的我就不多说了。 下面登录第一个账户看看 这是登录后的效果。 单击聊天室 然后我们再登录另外一个账户text 好了大家应该能看到效果了吧。 然后咱们再发个“你好” 收到了吧,再回复一个 对就是这个效果, 再来看看桌面版的 刚才的消息都在 这是桌面版的效果。 大家感觉怎么样。 我感觉大家可以在这个基础之上行扩展,最少可以看看他的实现思路 源码分享给大家了 sufeinet.com即时通信_云骞.zip (3.25 MB, 下载次数: 1078) ReceiveResponsesHandler 类,这个主要是用来接收和维护长连接的 实现长连接的两个重要来代码预览 [C#] 纯文本查看 复制代码 ? 01 02 03 04 05 06 07 08 09 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 68 69 70 71 72 73 74 75 using System; using System.Collections.Generic; using System.Collections; using System.Text; using System.Web; using System.Xml; using System.Threading; namespace Core { public class ReceiveResponsesHandler : IHttpAsyncHandler { public ReceiveResponsesHandler() { } HttpContext m_Context = null; IAsyncResult IHttpAsyncHandler.BeginProcessRequest(HttpContext context, AsyncCallback cb, Object extraData) { m_Context = context; string sessionId = context.Request.Params["SessionID"]; string clientVersion = context.Request.Params["ClientVersion"]; string serverVersion = context.Request.Params["ServerVersion"]; ResponsesListener asyncResult = new ResponsesListener(sessionId, cb, extraData); try { if (serverVersion != ServerImpl.Instance.Version) throw new IncompatibleException();

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧