Nov 7
目前QQsoy.com很多功能我还在开发中,QQsoy.com相关的任何问题和建议,都可以这里提出。我会尽量解决!谢谢您们的支持!
Tags:
Oct 14

ASP实例源码浏览次数:4 一般地,我们要查看Internet网上的一个网页,那么当您第一次访问这个网页的时候,系统首先要将这个网页下载到您的本地计算机的一个临时文件夹中进行缓存,当在一定的时间内,您第二次、第三次来访问这个网页的时候,浏览器就直接从您的本地计算机的临时文件夹中读取这个文件显示,这样做的好处就是避免每次都要重新下载而占用大量的时间和网络资源,不得不说页面的缓存加快了网页的显示,当然也有它的坏处,例如当服务器上的网页己经更新,而本地显示的还是没有更新的网页,这样就不能及时的显示更新后的内容,在某些情况下,我们需要禁止浏览器缓存,以使我们每次看到的页面都是最新的页面(例如后台操作、大型网站的时时新闻页面),这时我们就要禁用浏览器缓存,下面分别说明了在四种不同的页面环境下来禁止网页缓存:
一、对于静态页:

可以利用<meta>标记符的另一种用法来实现,其用法为:

<meta http-equiv="Pragma" content="no-cache">

特别说明:有很多人问到,这样设置了没有用,网页仍有缓存,那是因为您没有设置页面过期时间的原因,您必须同时指定当前页面的过期时间,例如:
<meta http-equiv="expires" content="Wed, 23 Aug 2006 12:40:27 UTC" />
这儿的meta标签用来定义页面过期时间为:2006年8月23日 23:40:27
需要特别注意的是content的值必须是一个UTC格式的标准时间(有关UTC格式的时间,请参见本站javascript教程)或者GMT时间(由于GMT时间己过时,所以建议用UTC标准格式),如果您要让网页立即过期,您可以设置一个过期时间远小于现在的时间,例如:
Mon,1 Jan 2001 0:0:0 UTC

二、对于ASP页面:

可利用以下语句下实现:

<%
Response.Buffer=true
Response.CacheControl="no-cache"    '禁止代理服务器缓存本页面
Response.Expires=-1000                          '让页面立即过期(这儿最好设置一个绝对值较大的负数)
%>

三、对于JSP页面:

<%
if (request.getProtocol().compareTo("HTTP/1.0")==0)
      response.setHeader("Pragma","no-cache");
if (request.getProtocol().compareTo("HTTP/1.1")==0)
      response.setHeader("Cache-Control","no-cache");
response.setDateHeader("Expires",0);
%>

四、对于PHP页面:

<?php
    header ("Cache-Control: no-cache, must-revalidate");
    header ("Pragma: no-cache");
?>
Oct 7

解除 PHP max_execution_time 的限制 不指定

空城 , 2009/10/07 10:13 , 技术 » PHP , 评论(0) , 引用(0) , 阅读(368) , Via 本站原创
很多人都知 道 php.ini 中缺省的最长执行时间是 30 秒,这是由 php.ini 中的 max_execution_time 变量指定,倘若你有一个需要颇多时间才能完成的工作,例如要发送很多电子邮件给大量收件者,或者要进行繁重的数据分析工作,服务器会在 30 秒后强行中止正在执行的程序,这个问题其实有解决办法的。

最简单当然是修改 php.ini 中 max_execution_time 的数值,不过不是所有人都有权修改 php.ini,例如使用网页寄存的开发人员,服务器上的 php.ini 由很多网站共同使用,所以不能随意修改。

另一个办法是在 PHP 程序头部加入 ini_set('max_execution_time', '0')或set_time_limit('0'),数值 0 表示没有执行时间的限制,你的程序需要跑多久便跑多久。若果你的程序仍在测试阶段,推荐你把时限设置一个实数,以免程序的错误把服务器当掉。
Sep 10

查询一天:

select * from table where to_days(column_time) = to_days(now());
select * from table where date(column_time) = curdate();

查询一周:

select * from table   where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(column_time);

查询一个月:

select * from table where DATE_SUB(CURDATE(), INTERVAL INTERVAL 1 MONTH) <= date(column_time);
Sep 8
TIOBE世界编程语言排行榜展现了编程语言的流行趋势。每个月,都有最新的数据被更新。这份排行榜的数据取样来源于互联网上富有经验的程序员、商 业应用、著名的搜索引擎(诸如谷歌、 MSN 、雅虎)的关键字排名、 Alexa 上的排名等。请注意这个排行榜只是反映了某个编程语言的热门程度 , 这并不代表它是一个最好的编程语言或是可以写出某些令人称赞的好程序。 TIOBE公布了最新的语言排行榜。.PHP果然不失所望。超过了C++.排在了前三的位置。


点击在新窗口中浏览此图片
点击在新窗口中浏览此图片
(Java和C稳居榜首,Java依然是最热门的编程)




位居前十位的编程语言曲线变化图

点击在新窗口中浏览此图片



以下是20-50名的编程语言排名!

点击在新窗口中浏览此图片

Aug 30

关于document.cookie的使用 不指定

空城 , 2009/08/30 15:10 , 技术 » SEO , 评论(0) , 引用(0) , 阅读(173) , Via 本站原创
 我们已经知道,在 document 对象中有一个 cookie 属性。但是 Cookie 又是什么?“某些 Web 站点在您的硬盘上用很小的文本文件存储了一些信息,这些文件就称为 Cookie。”—— MSIE 帮助。一般来说,Cookies 是 CGI 或类似,比 HTML 高级的文件、程序等创建的,但是 javascript 也提供了对 Cookies 的很全面的访问权利。

  我们先要学一学 Cookie 的基本知识。

  每个 Cookie 都是这样的:<cookie名>=<值>

  <cookie名>的限制与 javascript 的命名限制大同小异,少了“不能用 javascript 关键字”,多了“只能用可以用在 URL 编码中的字符”。后者比较难懂,但是只要你只用字母和数字命名,就完全没有问题了。<值>的要求也是“只能用可以用在 URL 编码中的字符”。

  每个 Cookie 都有失效日期,一旦电脑的时钟过了失效日期,这个 Cookie 就会被删掉。我们不能直接删掉一个 Cookie,但是可以用设定失效日期早于现在时刻的方法来间接删掉它。

  每个网页,或者说每个站点,都有它自己的 Cookies,这些 Cookies 只能由这个站点下的网页来访问,来自其他站点或同一站点下未经授权的区域的网页,是不能访问的。每一“组”Cookies 有规定的总大小(大约 2KB 每“组”),一超过最大总大小,则最早失效的 Cookie 先被删除,来让新的 Cookie“安家”。

  现在我们来学习使用 documents.cookie 属性。

  如果直接使用 documents.cookie 属性,或者说,用某种方法,例如给变量赋值,来获得 documents.cookie 的值,我们就可以知道在现在的文档中有多少个 Cookies,每个 Cookies 的名字,和它的值。例如,在某文档中添加“document.write(documents.cookie)”,结果显示:

name=nanwon; email=nanown@4181.cn; lastvisited=index.html

这意味着,文档包含 3 个 Cookies:name, email 和 lastvisited,它们的值分别是 nanwon, nanwon@4181.cn 和 index.html。可以看到,两个 Cookies 之间是用分号和空格隔开的,于是我们可以用 cookieString.split('; ') 方法得到每个 Cookie 分开的一个数组(先用 var cookieString = documents.cookie)。

  设定一个 Cookie 的方法是对 documents.cookie 赋值。与其它情况下的赋值不同,向 documents.cookie 赋值不会删除掉原有的 Cookies,而只会增添 Cookies 或更改原有 Cookie。赋值的格式:

documents.cookie = 'cookieName=' + escape('cookievalue')
+ ';expires=' + expirationDateObj.toGMTString();

是不是看到头晕了呢?cookieName 表示 Cookie 的名称,cookievalue 表示 Cookie 的值,expirationDateObj 表示储存着失效日期的日期对象名,如果不需要指定失效日期,则不需要第二行。不指定失效日期,则浏览器默认是在关闭浏览器(也就是关闭所有窗口)之后过期。

  首先 escape() 方法:为什么一定要用?因为 Cookie 的值的要求是“只能用可以用在 URL 编码中的字符”。我们知道“escape()”方法是把字符串按 URL 编码方法来编码的,那我们只需要用一个“escape()”方法来处理输出到 Cookie 的值,用“unescape()”来处理从 Cookie 接收过来的值就万无一失了。而且这两个方法的最常用途就是处理 Cookies。其实设定一个 Cookie 只是“documents.cookie = 'cookieName=cookievalue'”这么简单,但是为了避免在 cookievalue 中出现 URL 里不准出现的字符,还是用一个 escape() 好。
  然后“expires”前面的分号:注意到就行了。是分号而不是其他。
  最后 toGMTString() 方法:设定 Cookie 的时效日期都是用 GMT 格式的时间的,其它格式的时间是没有作用的。

  现在我们来实战一下。设定一个“name=rose”的 Cookie,在 3 个月后过期。

var expires = new Date();
expires.setTime(expires.getTime() + 3 * 30 * 24 * 60 * 60 * 1000);
/* 三个月 x 一个月当作 30 天 x 一天 24 小时
x 一小时 60 分 x 一分 60 秒 x 一秒 1000 毫秒 */
documents.cookie = 'name=rose;expires=' + expires.toGMTString();

为什么没有用 escape() 方法?这是因为我们知道 rose 是一个合法的 URL 编码字符串,也就是说,'rose' == escape('rose')。一般来说,如果设定 Cookie 时不用 escape(),那获取 Cookie 时也不用 unescape()。

  再来一次:编写一个函数,作用是查找指定 Cookie 的值。

function getCookie(cookieName) {
var cookieString = documents.cookie;
var start = cookieString.indexOf(cookieName + '=');
// 加上等号的原因是避免在某些 Cookie 的值里有
// 与 cookieName 一样的字符串。
if (start == -1) // 找不到
return null;
start += cookieName.length + 1;
var end = cookieString.indexOf(';', start);
if (end == -1) return unescape(cookieString.substring(start));
return unescape(cookieString.substring(start, end));
}

这个函数用到了字符串对象的一些方法,如果你不记得了(你是不是这般没记性啊),请快去查查。这个函数所有的 if 语句都没有带上 else,这是因为如果条件成立,程序运行的都是 return 语句,在函数里碰上 return,就会终止运行,所以不加 else 也没问题。该函数在找到 Cookie 时,就会返回 Cookie 的值,否则返回“null”。

  现在我们要删除刚才设定的 name=rose Cookie。

var expires = new Date();
expires.setTime(expires.getTime() - 1);
documents.cookie = 'name=rose;expires=' + expires.toGMTString();

可以看到,只需要把失效日期改成比现在日期早一点(这里是早 1 毫秒),再用同样的方法设定 Cookie,就可以删掉 Cookie 了。
Aug 24

102 种博客标题格式 不指定

空城 , 2009/08/24 09:20 , 乱七八糟 , 评论(0) , 引用(0) , 阅读(155) , Via 本站原创
好的标题是好文章的一个重要标志, 链接诱饵是引人注目的最好标题。

著名博客 AuthorityBlogger 的作者 Chris Garrett 写了一篇 《102 种标题写作格式》,我对原文进行了翻译,译文如下:

完成以下填空题,从而创建吸引人的、点击率高的标题:

一、得到你想要的(健康、财富、关系、时间和生活方式)

1、10个为 ____ 节省金钱/时间的技巧

2、获得 ____ 最优惠价的秘密

3、如何在网上找到最好的 ____ 生意

4、____ 的最好小工具

5、____ 值那么多钱吗?

6、获得更便宜的 ____ 全攻略

7、方便 ____ 的最好十个方法

8、____ 块钱以下最好的 ____

9、不同寻常但可以实现的 ____

10、在不增加 ____ 的情况下推广你的 ____ 5个方法

11、进行 ____ 预算的方法

12、____ 和盈利的 5 种方法

13、21 种大胆并具有创意的 ____ 点子

14、还有谁想 ____

15、现在你可以免费 ____

16、如何在较短的时间内获得 ____

17、10 位明星和他们的 ____

18、名利双收的 ____ 生活方式

19、如何揣摩和扮演 ____

20、现在你可以花费较少的努力获得更多更好的 ____

21、____ 像个电影明星

22、可以使你 ____ 得比预期要好的 9 种方法

23、如何在 10 秒钟之内 ____

24、拥有一个足以让你自豪的 ____

25、21 种 ____ 交流技巧

26、发现你最好的 ____

27、计划一个完美的 ____

28、这是 ____ 真正需要的

29、你是/可以 ____ 的 7 种迹象

30、现在开始 ____

二、水晶球和历史

31、____ 的历史

32、____ 年 ____ 将如何影响 ____

33、 ____ 的过去和现在

34、关于 ____ 未来的 40 个预测

35、 ____ 的现代规则

36、来自历史的 ____ 教训

37、 ____ 的故事

三、问题和恐惧

38、 ____ 是一个濒临灭绝的品种吗?

39、如何克服对 ____ 的恐惧

40、10种 ____ 诈骗以及如何避免它们

41、你的 ____ 有多安全?

42、7 个最令人害怕的 ____

43、最吓人的 10 个 ____

44、蛮横的 ____ 以及它们如何影响你

45、永远摆脱你的 ____

46、你的 ____ 可以成为 ____ 吗?

47、你的 ____ 并没有告诉你 ____

48、提防 ____ 以及如何识别他们

49、不 ____ 的 10 个好方法

50、如何安全地 ____

51、潜伏的/最大的 ____ 危险

52、 ____ 该做和不该做的

53、把 ____ 搞砸的 21 种方法

54、不 ____ 的 10 个理由

55、7 个 ____ 危险信号

56、 ____ 永远不该做的 7 件事

四、事实、虚构、秘密、真相和谎言

57、每个人都应该知道的关于 ____ 的事

58、 ____ 性格测试:你的 ____ 是如何说你的

59、 ____ 谎言以及如何识别它们

60、 ____ 的事实和奥秘

61、关于 ____ 的真相

62、 ____ 专家不想你知道的 21 个秘密

63、101 个最流行的 ____ 奥秘

64、10个你应该知道的 ____ 事实

65、 ____ 成功的秘密

66、很少人知道的 ____ 方法

67、 ____ 中的真实和谎言

68、 你所需要知道的关于 ____ 的事

69、我们告诉我们的 ____ 10 个谎言

70、没有告诉 ____ 的 101 件事

71、揭示:为什么 ____

72、如何识别一个虚假的 ____

五、交易技巧

73、什么时候比较适合 ____ 或者 ____ ?

74、很少人知道的 ____ 方法

75、____ 比较好的 10 个理由

76、如何计划最优的 ____

77、如何像 ____ 一样 ____

78、你可以自己做的 ____ 工作

79、一个有利于 ____ 的方法

80、一个 ____ 的快速方法

81、7 个有创意的 ____ 方法

82、如何成为一个 ____

83、你可以 ____ 的 9 件令人惊喜的事

84、10 步 ____ 像一个专家

85、21 个专家 ____ 技巧

86、你应该 ____ 的 5 个理由

六、最好的和最坏的

87、世界上最便宜/最好/最贵的 10 ____

88、你可以购买的世界上最 ____

89、世界上最差劲的 ____

90、世界上最不同寻常的 ____

91、最有趣的 ____ 故事

92、世界上最性感的 ____

93、世界上最好和最坏的 10 ____

94、对 ____ 最友好的 19 ____

95、100 个有用的或者漂亮的 ____

96、 ____ 比 ____ 要好的 5 个理由

97、世界上 10 个最重要的 ____

98、影视界关于 ____ 最 ____ 的 20 个剪辑

99、我们不想看到 ____ 的 10 ____

100、21 个最滑稽的 ____

101、世界上最糟糕的 ____ 建议

102、 ____ 是最糟糕的 ____ 的 10 个理由

作者:Young 原文:http://www.essentialblog.cn/102-blog-headline-formulas/
Aug 20

<input type="button" name="anniu1" onClick='copyToClipBoard()' value="复制专题地址和url地址,传给QQ/MSN上的好友">
<script language="javascript">
function copyToClipBoard(){
var clipBoardContent="";
clipBoardContent+=document.title;
clipBoardContent+="";
clipBoardContent+=this.location.href;
window.clipboardData.setData("Text",clipBoardContent);
alert("复制成功,请粘贴到你的QQ/MSN上推荐给你的好友");
}
</script>
<br />
<br />

<span>直接复制url</span><br>
<input type="button" name="anniu2" onClick='copyUrl()' value="复制URL地址">
<script language="javascript">
function copyUrl()
{
var clipBoardContent=this.location.href;
window.clipboardData.setData("Text",clipBoardContent);
alert("复制成功!");
}
</script>

<span>点击文本框时,复制文本框里面的内容</span><br>
<input onClick="oCopy(this)" value="你好.要copy的内容!">
<script language="javascript">
function oCopy(obj){
obj.select();
js=obj.createTextRange();
js.execCommand("Copy")
alert("复制成功!");
}
</script>
<br />
<br />
<span>复制文本框或者隐藏域中的内容</span><br>
<script language="javascript">
function CopyUrl(target){
target.value=myimg.value;
target.select();
js=myimg.createTextRange();
js.execCommand("Copy");
alert("复制成功!");
}
function AddImg(target){
target.value="[IMG]"+myimg.value+"[/ img]";
target.select();
js=target.createTextRange();
js.execCommand("Copy");
alert("复制成功!");
}
</script>
<input name=myimg type=hidden id=myimg value="http://www.jb51.net" />
<input name=imgurl type=text size=32 value="http://www.jb51.net" />
<input type=button value="点击这里复制本站地址" onClick="CopyUrl(imgurl);" />

<br>
<br />
<span>复制span标记中的内容</span>
<script type="text/javascript">
</script>
<br />
<br />
<script type="text/javascript">function copyText(obj)
{
var rng = document.body.createTextRange();
rng.moveToElementText(obj);
rng.scrollIntoView();
rng.select();
rng.execCommand("Copy");
rng.collapse(false);
alert("复制成功!");
}
</script>
以下是代码片段:<br />
<br />
<span id="tbid">http://www.jb51.net</span>
[<a href="#" onClick="copyText(document.getElementById('tbid'))">点击复制</a>]
<span id="tbid2">http://www.jb51.net</span>
[<a href="#" onClick="copyText(document.getElementById('tbid2'))">点击复制</a>]
本文来自: 脚本之家(www.jb51.net) 详细出处参考:http://www.jb51.net/article/15910.htm
Tags:
分页: 3/52 第一页 上页 1 2 3 4 5 6 7 8 9 10 下页 最后页 [ 显示模式: 摘要 | 列表 ]