2008年07月 的日志列表

200831/07

PHP的exit

Published by bugx 19:11:41 七月 31th,2008 in 随笔涂鸦.
今天在写一个上传类的时候,exit着实让我郁闷了一把,PHP的exit并非停止当前函数运行,会影响到上层调用,准确的说exit是停止脚本解析,相当于asp的response.end。
class class_a()
{
public $i;

function b()
{
  $this->a();
  $this->i=0;
}

function a()
{
...
 exit;
}
}

*******************************************
$obj = new class_a();
$obj->b();
$a=1;
echo a;


这样的话,内部public 属性 i 是没有值的。同样下面的页面中 echo a;也是没有任何输出。
这几天写了点delphi,就NND忘了PHP的exit;晕死,郁闷了我一下午,直到我逐步调试后,才发现原来一个类里的一个函数有这么一句。

深入一点,讲另外一个类似的函数。
return;
如果在一个函数中调用 return() 语句,将立即结束此函数的执行并将它的参数作为函数的值返回。return() 也会终止 eval() 语句或者脚本文件的执行。

如果在全局范围中调用,则当前脚本文件中止运行。如果当前脚本文件是被 include() 的或者 require() 的,则控制交回调用文件。

注意到区别了吧。这些小函数要理解清楚,免得不同的语言之间混了。


exit  php  

已被阅读113次 0 Comments 0 Trackbacks

200830/07

NSB5.0的爆库漏洞

Published by bugx 11:18:13 七月 30th,2008 in 不成器的作品.
NSB5.0的5.0beta版本在用access数据库的时候存在一个爆库的漏洞。这个漏洞在5.0以前是没有的,在整理数据库类的时候很大意,没有对数据库连接做异常判断。
修正方法
cls_database.asp的OpenDatabase函数
DbConnect.Open DbConnectString
前后各加一句
On Error Resume Next
其实应该只要前面就可以了,双保险也不错

NSB5.0  

已被阅读42次 0 Comments 0 Trackbacks

200815/07

Javascript的继承

Published by bugx 22:53:58 七月 15th,2008 in web种种.

JS的继承应该有很多种实现方式。

最常用的是原型继承。

function parentClass(){

   method () { }

}

function subClass (){

  method2(){}

}

subClass.propotype =new parentClass;

subClass.propotype.constructor=subClass;

这样subClass就继承了parentClass

JS的怪异语法真让我头疼,什么时候JS也正规一点。

js  

已被阅读64次 0 Comments 0 Trackbacks

200814/07

Javascript的动态性

Published by bugx 22:04:04 七月 14th,2008 in web种种.

ruby是一种动态语言,众所周知。大家似乎忽略了javascript也是动态的哦,这就使得javascript变得非常的灵活和强大。动态语言的优点就是在在类外部对类进行扩展,甚至对对象动态的增加方法。据说net3加入了这种特性,我还未验证过。

点击阅读...

js  动态语言  

已被阅读31次 1 Comments 0 Trackbacks

200810/07

百度的黑社会性质竞争

Published by bugx 09:23:06 七月 10th,2008 in 随笔涂鸦.

百度好像总是单方面的终止收录,原因不明。甚至有人说没有做它的排名,也会把你封了。它觉得你做的比较好了,有必要买它的关键字,否则可以打击你一下,让你知道不巴结它的后果。做法和黑社会无异,只是它在网络上进行,可以肆无忌惮的收保护费。

点击阅读...

百度  

已被阅读105次 0 Comments 0 Trackbacks