破宝

我是一块破破烂烂的宝贝石头。
随笔 - 94, 评论 - 1281, 引用 - 52

导航

关于

自选精华版 RECOMMENDATIONS
留言板 GUESTBOOK

本人 blog 文章、图片及其他资源等,除另有声明外,均遵循以下原则向全球(当然包括朝鲜、古巴、利比亚等国)共享:

1。欢迎转载、复制、传播、引用,但转载、复制(包括但不仅限于作为参考资料复制到本地)、传播、引用同时必须在显著位置注明作者(破宝/percyboy)和文章原始 URL 地址等信息。但商业转载、复制、传播(尤指用于图书、光盘等媒体的部分或全部),须事先征得本人的许可。

2。文章以“现状”提供,不为由于使用本站资源而造成的任何损失而负责,仅提供力所能及的咨询和参考意见。

3。关于修改:允许您将本 blog 中的资源作为参考资料复制时的一定修改,但仍须保留作者和出处信息;其他情况下的修改(包括修改后再发布),须和本人确认许可。
 

标签

每月存档

最新留言

广告

【第1页/共2页,11条】
首页
前页
1

关于网页计数器的一点小疑问

我在做一个网页计数器时遇到了一点问题,想请教大家:

我设想我的计数器的大致需要是:除了统计每天访问次数外,还要统计客户端环境的一些信息,如:操作系统平台,使用的浏览器,屏幕分辨率大小,Referrer,等。

大多数计数器都是采用客户端 javascript 脚本的方式来嵌入计数器网页的,如:

     <script language="javascript" src="counter.aspx?id=23"></script>

在 counter.aspx 中,我们则需要直接写入当前的数字;或者以拼图的方式将数字拆开,然后写入一串数字的图片。总而言之,这些都是服务端的事情了,比较简单了。

事实上,这样的情形中我们一般还需要将一些客户端信息,如:Referrer,屏幕分辨率大小等以某种方式(一般是 QueryString)传回服务端,如下:

     <script language="javascript">
         var tmp = "<scri" + "pt language='javascript' src='counter.aspx?"
                    + "id=23&referrer=" + document.referrer 
                    + "&screenwidth=" +
 screen.width + "'></scri" + "pt>";
        document.write(tmp);
     </script>

但我发现一个问题,我们无法记录到搜索引擎等所使用的 Crawler 的踪影,因为 Crawler 不会解析这样的脚本。然而,Crawler 对于我们来说太重要了,我不想舍弃对它们的跟踪。

那么另一种方案就是直接将计数器代码写入 Web Forms 中(或者间接地,做成 Control 再放入),这样在 Crawler 访问时,计数器肯定能够觉察到;但另一方面,我们无法统计客户端屏幕分辨率大小(这似乎是个小问题);还有,我们的计数器被 *.aspx 牢牢困住了,我们只能统计 *.aspx 页面了,连 *.htm 也无法统计了!

怎样才能兼顾二者呢?怎样才能既能察觉到 Crawler 的踪影,又能保证一定的灵活性呢?有谁可以给个思路呢?


注①:虽然在服务端用 Request.Referrer 可以返回一个 Referrer,但我们得到的是 counter.aspx 的 Referrer,也就是我们正在统计的目标页面。所以必须在我们统计的目标页面中用 document.referrer 取得。而在下面一种方案中,由于计数器直接包含在目标页面中,所以 Request.Referrer 就是我们要的。

posted on 2003-11-28 01:32:00 by percyboy  评论(16) 阅读(13008)

一组在线 Rich Text 编辑器

今天坐了一天,把以前的东西整理了一通,简单“装饰”一下,放到网上给大家看:

  1. Cross-Browser Rich Text Editor
          一个兼容多种浏览器(IE5.5+, Mozilla1.3+)的编辑器
  2. dotnetBB 论坛上使用的编辑器
          使用的是 DIV 而非 IFRAME
  3. 动网 HTML 编辑器
          很老的一个,好像是动网新闻上的?
  4. 一个叫 ManyMonkeys 的编辑器
          我最早见到的支持实时显示 B,I,U 等按钮状态的编辑器
  5. 我比着上面那个自己做的一个编辑器
          比较粗糙,但也够用

看来蝈蝈俊是比较偏爱让 B,I,U 等按钮状态实时显示的,我早上就看到他的想法,现在已经看到他已经把 0.6 版拿出来了。但就我这里的效果看,并不见得好,主要是:

  • 总是觉得晃眼,特别是鼠标划过工具条的时候;
  • 当我快速的在文本框里敲字母时,能够感到明显的延迟; 
  • 在文本框中敲字母时,能够看到 IE 状态栏不停的晃着“正在下载图片 http://...../.../.../undefined...”的字幕,不爽;
  • 我打开“任务管理器”,查看 CPU 占用率:只要我在文本框里敲字母,占用率就维持在 80% 左右(在默认的 FreeTextBox 1.6.3 中 CPU 占用率一般低于 10%;我的机器不太好,800MHz,但我想网吧里的机器比我的也好不了多少吧?)。

其实一句话,“晃眼”!和上面我列出的第四个编辑器一样的毛病。其实当时我正是看到 ManyMonkeys 的那个可以实时显示状态,所以比着它做,但后来发现“延时”和“晃眼”的问题很烦人,最后终于放弃实时显示。蝈蝈俊,看看能不能让用户自己选择是否开启“实时状态显示”的功能?(并不是每个用户都需要这个功能的)

——
查了一下访问记录,很多朋友是搜索“在线编辑器”进来的,所以添一句:ASP.NET 下比较好的在线编辑器是 FreeTextBox,大家可以看看它的中文版本

posted on 2003-11-27 23:07:00 by percyboy  评论(45) 阅读(27471)

Java 虚拟机就是慢

1。这两天突然发现访问新浪新闻中心时,CPU占用率超高,几乎都在90%以上,关闭该网页,CPU占用率马上降到5%以下;想起前两天访问时,IE 曾经询问我“是否允许使用 Java虚拟机”的问题(当时我选Yes),我再想是不是这个 Java虚拟机的问题呢?

2。查看了一下访问 FreeTextBox 1.6.3 中文版的记录,居然有人用 1600*1200 的分辨率,吓我一跳!

posted on 2003-11-26 10:52:00 by percyboy  评论(4) 阅读(2554)

ASP.NET 中防止 Access 数据库被下载的几种选择

在 ASP 中防止 Access 数据库被下载的“常用”方法大多是:

  1. [点这里] 下载到一个 Access 文件,其中包含一个特殊的表,你把它复制(包括数据)到你要保护的 Access 中;
  2. 然后把你的 Access 重命名为 *.asp。

经过这样的步骤,这个 Access 即使放在 Web 目录中也不会被下载。

注意:正如思归(saucer)说过的那样,这并不是最好的解决方案;如果有可能的话,把 Access 文件放在非 Web 目录中或者合理的设置 NTFS/IIS 权限,会更好一些。
但并不是所有情形中都可以这么解决,因为可能有时候你并没有直接操纵服务器的资格,那么也只能这么 BT 地解决了。

虽然在 ASP.NET 中仍然可以采用上面的方法去做(如果你的服务器同时支持ASP 的话),但显然会有更多其它的方案,如下的几种可以供你参考:

  1. 将你的 Access 重命名 *.asax:因为 ASP.NET 的处理机制中,默认情况下,对这样的请求是直接拒绝的,并不会有上面思归提到的解析过程耗费资源等问题;
    按照这个思路,其实还可以把 Access 重命名为 *.config,*.vb, *.cs 等等。
  2. 将你的 Access 放在你的应用程序根下 bin 目录(也就是你放置 DLL 文件的那个目录)中:已经发现,IIS 默认被配置为拒绝直接访问 bin 目录中的文件,用以保护对 DLL 的请求,事实上也同时保护了放在 bin 目录中其他文件。

(转载请注明出处)

posted on 2003-11-25 09:41:00 by percyboy  评论(13) 阅读(14493)

FreeTextBox 1.6.3 中文版

中文版:http://www.percyboy.com/w/ftb/
(最近有些忙,让大家久等了。)

posted on 2003-11-25 01:16:00 by percyboy  评论(100) 阅读(28559)

发现 FreeTextBox 有 bug,发布推迟。

原本打算今天晚上发布汉化版的 FreeTextBox 1.6.3 的。刚才给 蝈蝈俊 说要给他做个示例解释 SaveClick 事件。但没想到这里居然有个 bug,SaveClick 事件不执行。发布推迟,见谅!

另外今天下午又花了一个小时为 FreeTextBox 类的每个属性添加了中文 DescriptionAttribute,这样一来这个控件就可以在 VS.NET 中的属性编辑器中看到中文说明了。

posted on 2003-11-13 20:03:00 by percyboy  评论(16) 阅读(3195)

接茬

蝈蝈俊:http://blog.joycode.com/ghj/posts/6513.aspx 

1。关于 ViewState,你一定没有看过微软 MSIEWebControls 的源代码。如果看过,你就会知道那里面也到处是 ViewState。我不想说这样做是否有好处,但我想微软这么做自有它的道理。事实上,这个 FreeTextBox 的各方面反应还是很令人满意的。

2。关于 SaveClick 事件处理的想法,SaveClick 为公开事件,也就是说可以为此事件编写 OnSaveClick 处理过程,在此过程中我们应该可以像 DropDownList 控件的 SelectedItemChanged 事件那样去做各种各样的事情,而不仅仅是返回 FreeTextBox.Text。(晚些时候我给你个例子)

3。关于你写的第二点(CSS排版)没看太懂。其实你应该加一些比如像:插入 Flash 这样的功能,倒是很有意思。

4。关于使用 Config 文件,也是可行的思路,但对于一个控件来说,对它的控制就不够灵活了。用属性的话,可以在程序运行中改变其值,已达到为不同的用户(比如级别不同(主观标准),或者是客户端浏览器条件不同(客观标准))呈现不同的效果。这一点完全可以在 CSDN 中用到,比如:可以假设每个用户都有一个信任度,信任度高的用户可以允许它使用脚本,也就是 PasteMode=Default;不信任的用户不允许使用脚本,PasteMode=NoScript;更甚者,PasteMode=Disabled。另外,一个 FreeTextBox 要对应一个 Config 文件,部署起来比较麻烦。

 

posted on 2003-11-13 17:24:00 by percyboy  评论(4) 阅读(2520)

汉化 FreeTextBox 1.6.3

忙活了一夜,终于搞定了!晚上检查检查之后就可以公开了,现在任务是休息……

posted on 2003-11-13 12:06:00 by percyboy  评论(9) 阅读(5335)

决定采用 ASP.NET + Flash MX 2004 作毕业设计

今天去系里面和老师谈毕业设计的事情。老师给我的课题是教学多媒体课件制作,我根据我的爱好和实际,定为多媒体网络互动课件制作。最终课件主要预期目标是四大块功能:(1)课堂教学为基本内容,尽可能合理使用多媒体技术配合课堂教学;(2)课外阅读材料,教师可以根据课程特点,提供一些阅读材料放在网络中;(3)学生课下在线提问与主题讨论;(4)课后习题及答案、考前复习提纲等。

后三项看来都相对比较简单,如果时间紧张,可以考虑直接作成纯粹 ASP.NET 的。核心是教学课件部分,需要实现许多功能,比如:批注,对习题及学生在课前提出的问题等的讲评,白板(即老师可以用鼠标或手写板在屏幕上任意涂画),课件除上课用之外可以考虑允许学生下载学习等等。

经过这些天的学习和思考,(其实主要是这些天受 eric 的影响),我决定用 ASP.NET + Flash MX 2004 作核心教学课件部分。原因是:Flash 可以非常自由的实现各种特殊效果(包括动画和声音的控制),可以为课件增辉很多;Flash MX 2004 提供了许多很好的编程特性,按照 eric 的说法就是:ASP.NET 是最好的 Server-Side,Flash MX 2004 是最好的 Client-Side。

看来以后要经常往 eric 那边学习了 笑脸

posted on 2003-11-12 05:07:00 by percyboy  评论(15) 阅读(5762)

原来还有 wiki (维客)

http://www.cnic.org/index.php?display=Wiki

posted on 2003-11-04 05:25:00 by percyboy  评论(1) 阅读(1531)

【第1页/共2页,11条】
首页
前页
1

Powered by: Joycode.MVC引擎 0.5.2.0