Browsing all articles from 三月, 2009
31
12

星尘传说的基址..(3.31)

Author Jessica     Category 本站原创     Tags ,

一直再搞web..今天玩了个游戏叫做星尘传说

竟然没有做任何的防外挂的措施..十分窃喜

很久没有搞过这方面的东西了..竟然还能找到基址..很庆幸:)

不敢独享.发出来给大家.

明天找找call..如果能找到按键call就可以做出个外挂啦..

如果做出来肯定会放出来的:)

人物角色

[[007B16C0] + 64] + 498]  当前血

[[007B16C0] + 64] + 634]  满血

[[007B16C0] + 64] + 49c] 当前蓝

[[007B16C0] + 64] + 638] 满蓝

[[007B16C0] + 64] + 20] 角色名

[[007B16C0] + 64] + 4A2] 角色等级

[[007B16C0] + 64] + 4A4] 当前经验

[[007B16C0] + 64] + 4AC] 升级所需经验

[[007B16C0] + 64] + 4B1] 职业等级

[[007B16C0] + 64] + 4CC] 职业经验

[[007B16C0] + 64] + 520] 升级所需职业经验

怪物

[[007B16C0] + 130] + 34]  怪物基址

[[007B16C0] + 130] + 34]+ 4e0] 当前怪物的血

[[007B16C0] + 130] + 34]+ 538] 怪物的满血

[[007B16C0] + 130] + 34] + 20] 怪物的名字

30
8

Skiyo缓存类 – SkiyoCache(非serialize保存方式)

Author Jessica     Category PHP, 本站原创     Tags , ,

SkiyoCache的最大的特点就是并非采用序列化功能来保存数据.而是直接保存变量,省去序列化这一步骤.

我们先来看下例子

  1. //构造函数可以有一个参数.这个参数是路径  
  2. //$sc = new SkiyoCache('/tmp/cache/');  
  3. //默认为当前目录的cache子目录 如果不存在会自动创建  
  4. $sc = new SkiyoCache();  
  5. //缓存的变量  
  6.  
  7. //读取某个变量 参数是变量名 如果读取不到就返回false  
  8. $array = $sc->read('array1');  
  9. //如果缓存中读不到就写入缓存  
  10. if (!$array) {  
  11.     //写入缓存有3个参数.前两个是必须的.  
  12.     //第一个是变量名.第二个是要储存的变量.累死smarty的assign  
  13.     //第三个是缓存时间.默认为600秒  
  14.     $array = array (  
  15.     3 => '32',  
  16.     'fdaf' => 'fdsa',  
  17.     array('fdsafdsa','fdsafdsa')  
  18.     );  
  19.     $sc->cache('array1'$array);  
  20. }  
  21. print_r($array); 

执行后.会得到一个缓存文件.这个文件的内容是

  1. <?php /* This cache file is created by SkiyoCache.[2009-03-30 08:49:29] */   
  2. $array1 = array (  
  3.   3 => '32',  
  4.   'fdaf' => 'fdsa',  
  5.   4 =>   
  6.   array (  
  7.     0 => 'fdsafdsa',  
  8.     1 => 'fdsafdsa',  
  9.   ),  
  10. );  
  11. ?> 

看到了吧?不是采用序列化的保存方式.而是直接保存了变量.

这样需要的时候直接包含进来就OK了.更不用unserialize()了.

read more

30
20

我们为什么要抛弃模板引擎??

Author Jessica     Category PHP     Tags ,

我们为什么要抛弃模板引擎??

因为我们不使用模板引擎不代表不使用模板引擎的思想.

有的人一直认为.如果不使用模板引擎.代码就会显得杂乱无章..

HTML与PHP混写的方式相信每个人都经历过.是不是很痛苦?往往不知道写到哪里了..还得从头摸索..

我来举个简单的读取数据库并输出到HTML页面的例子.

最初我们都是这么写PHP程序的..

user.php

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
  2. <html xmlns="http://www.w3.org/1999/xhtml">  
  3. <head>  
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
  5. <title>user</title>  
  6. </head>  
  7.  
  8. <body>  
  9. <?php  
  10. $sql = "SELECT uid, uname FROM table";  
  11. $rs = mysql_query($sql);  
  12. ?>  
  13. <table width="200" border="1">  
  14.   <tr>  
  15.     <td>用户id</td>  
  16.     <td>用户名</td>  
  17.   </tr>  
  18. <?php  
  19. while ($row = mysql_fetch_array($rs)) {  
  20.     echo '<tr>';  
  21.     echo "<td>{$row['uid']}</td>";  
  22.     echo "<td>{$row['uname']}</td>";  
  23.     echo '</tr>';  
  24. }  
  25. ?>  
  26. </table>  
  27. </body>  
  28. </html> 

这样的程序往往令人费解..难以读懂..并且难以维护.

在我们使用模板引擎之后.就会是另外一翻景色了..

我们来用smarty举例子

read more

29
2

利用jQuery实现简单的web ping…

Author Jessica     Category JavaScript     Tags

简单的不能在简单了..也没有什么技巧可言..

前几天看到有个人提出这个问题..其实无非就是不间断的ajax请求而已.没有什么技术含量

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
  2. <html xmlns="http://www.w3.org/1999/xhtml"> 
  3. <head> 
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
  5. <title>简单的web ping演示</title> 
  6. <script type="text/javascript" src="jquery.js" ></script> 
  7. <script type="text/javascript">   
  8. $(document).ready(function (){  
  9.     var ping, requestTime, responseTime ;  
  10.     setInterval(ping,1000);  
  11.     function ping() {  
  12.     $.ajax({url: 'empty.html',  //设置一个空的ajax请求  
  13.         type: 'GET',  
  14.         dataType: 'html',  
  15.         timeout: 30000,  
  16.         beforeSend : function() {  
  17.             requestTime = new Date().getTime();  
  18.         },  
  19.         complete : function() {  
  20.             responseTime = new Date().getTime();  
  21.             ping = Math.abs(requestTime - responseTime);  
  22.             $('#ping').append('<br />ping:' + ping + 'ms');  
  23.         }  
  24.     });  
  25. }  
  26. });  
  27.    
  28. </script> 
  29. </head> 
  30.    
  31. <body> 
  32. <div id="ping">loading...</div> 
  33. </body> 
  34. </html> 

演示地址:http://www.skiyo.cn/demo/ping/

read more

24
3

如何压缩(混淆)一个JavaScript文件

Author Jessica     Category JavaScript     Tags , ,

首先你得知道什么叫JS混淆..就是把代码整的人看不懂..

类似这样eval(function(p,a,c,k,e,r)….省略N行..

这样做基于两个好处

1.代码会被压缩..因为JS会在网上传输.所以体积越小越好.

2.混淆顾名思义就是使人难以理解.达到保护代码的作用.

我推荐一个在线的压缩网站.非常不错.我经常使用

http://javascriptcompressor.com/

但是使用过的人肯定会遇到这样的情况

混淆出来的代码不可以运行.但是不混淆就没事.

这是代码的问题?还是这份代码就不能被混淆吗??

答案当然是否定的..

那问题出在哪里呢??

read more

22
14

学习PHP一年的经验和小结。

Author Jessica     Category PHP, 心情杂谈     Tags
其实算下来,应该算是一年多了。在前年大约12月份的时候,我的一个朋友开始接触PHP,我那时并不为之心动。到了去年一开学,大二的下半年吧,他的已经可以使用PHP写出一些东西来了。我那时正在学习JSP,因为是课程的安排。本来打算是专攻JEE,毕业了就去做这一块的。但是由于我是计算机系网络部的,学校的好多网页制作的需求都会丢给我们两个,为了更快的进行网站的开发,并且容易部署,我也塌下心来,和他一起学习PHP。
记得刚学习的时候,觉得PHP太自由了,太简单了,因为我起初是学Java的。我起初学习PHP没有看过任何书和资料。个人觉得学习PHP的起初最重要的一块就是分清GET和POST。会接收参数后,在加上学会看手册就差不多能写出程序来了。起初我给学校写程序都是这样的。看手册也是一种能力,记得学Java的时候,老师就一再强调看手册的重要性。
再后来,我和我朋友写了几个程序后,觉得应该做点什么。我们进行了相当长时间的讨论和策划,觉得市面存在这样一种情况。大部分的个人站站长都苦于没有地方宣传自己的网站,并且他们都无力支付广告费。所以我们的设想就是办这样一个平台,展示每个人的网站,你可以免费的发布你的网站,供大家浏览。我们进行了网站的分类,其中的一大块就是QQ空间,个人觉得QQ互踩是个很有利的一块。这里还有一个盈利的地方就是,你可以免费发布你的网站,但是没几天也许会被别人的提交的新网站给压下去,所以付费置顶也是我们策划的一种方式。起初打算是用别人的模板,但是又觉得如果网站做打,一定会所谓的版权问题的。所以我们两个不得不硬着头皮学习PS。其中制作的详细过程就不说了,至少我觉得这是我第一个可以拿得出去手的作品。http://www.shaiwww.cn后来由于各种问题,代码混乱,没有分离,漏洞百出,已经很长时间不维护了,只是觉得当时的美工做的还不错:)网站现在访问不了了,因为备案的问题。

read more

20
3

IE8的一些兼容HACK..

Author Jessica     Category CSS, 收集整理     Tags

使用META标签

Windows Internet Explorer 8 支持多种兼容性模式,它们可启用不同的受支持的功能,并影响内容的呈现方式。例如,
IE5 模式呈现内容时,像是使用了 Windows Internet Explorer 7 的 Quirks 模式,这与 Windows Internet Explorer 5 显示内容的方式很相似。
IE7 模式呈现内容时,无论页面是否包含 <!DOCTYPE> 指令,都像是使用了 Windows Internet Explorer 7 的标准模式。
EmulateIE7 模式通知 Windows Internet Explorer 使用 <!DOCTYPE> 指令确定如何呈现内容。标准模式指令以 Windows Internet Explorer 7 标准模式显示,而 Quirks 模式指令以 IE5 模式显示。与 IE7 模式不同,EmulateIE7 模式遵循 <!DOCTYPE> 指令。对于多数网站来说,它是首选的兼容性模式。
IE8 模式最大限度地支持行业标准(包括 W3C Cascading Style Sheets Level 2.1 SpecificationW3C Selectors API,并能有限支持 W3C Cascading Style Sheets Level 3 Specification(工作草案)
Edge 模式通知 Windows Internet Explorer 以最高级别的可用模式显示内容,这实际上破坏了“锁定”模式。对于 Windows Internet Explorer 8,这与 IE8 模式是等效的。如果(假定)Windows Internet Explorer 的未来版本支持更高级别的兼容模式,设置为 Edge 模式的页面将显示在由该版本支持的最高级别模式中;但是,当使用 Windows Internet Explorer 8 查看时,这些相同的页面仍将显示在 IE8 模式中。由于在 Windows Internet Explorer 的未来版本中呈现页面内容可能出现意外,建议 Web 开发人员将 Edge 模式仅用于测试页面和其他非生产活动。

  1. <html> 
  2.    <head> 
  3.    <!-- Mimic Internet Explorer 7 --> 
  4.       <title>我的网页</title> 
  5.       <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /> 
  6.    </head> 
  7.    <body> 
  8.       <p>内容在此处。</p> 
  9.    </body> 
  10. </html> 

Content 属性指定了该页面的模式;例如,要模仿 Windows Internet Explorer 7 的行为,请指定 IE=EmulateIE7。同样,可指定 IE=5、IE=7 或 IE=8 以选择其中一种兼容性模式。您还可以指定 IE=edge 以通知 Windows Internet Explorer 8 使用最高级别的可用模式。
X-UA-compatible 标头不区分大小写;但是,它必须显示在网页中除 TITLE 和其他 META 元素以外的所有元素之前的标头(HEAD 部分)中。

read more

19
3

绑定参数原理以及SQL注入..

Author Jessica     Category PHP     Tags , ,

假设我们的用户表中存在一行.用户名字段为username.值为aaa.密码字段为pwd.值为pwd..
下面我们来模拟一个用户登录的过程..

  1. <?php  
  2. $username = "aaa";  
  3. $pwd = "pwd";  
  4. $sql = "SELECT * FROM table WHERE username = '{$username}' AND pwd = '{$pwd}'";  
  5. echo $sql//输出  SELECT * FROM table WHERE username = 'aaa' AND pwd = 'pwd'  
  6. ?> 

这样去执行这个sql语句.显然是可以查询出来东西的.返回用户的这一列.登录成功!!
然后我改一下..把密码改一下.随便一个值.如下.我改成了ppp.

  1. <?php  
  2. $pwd = 'ppp';  
  3. $sql = "SELECT * FROM table WHERE username = '{$username}' AND pwd = '{$pwd}'";  
  4. echo $sql//输出  SELECT * FROM table WHERE username = 'aaa' AND pwd = 'ppp'  
  5. ?> 

这样很显然.如果去执行这个SQL语句..是查询不到东西的.也就是密码错误.登录失败!!
但是有的人总是不老实的.他们会想尽一切办法来进行非法的登录.所谓非法就是在他不知道用户名密码的时候进行登录.并且登录成功..
那么他们所做的原理是什么呢??其实原理都是利用SQL语句..SQL语句强大的同时也给我们带来了不少麻烦..
我来举个最简单的例子.我们要运用到的SQL关键字是or
还是上面的代码.我们只要修改一下密码即可

  1. <?php  
  2. $username = "aaa";  
  3. $pwd = "fdsafda' or '1'='1";  //前面的密码是瞎填的..后来用or关键字..意思就是无所谓密码什么都执行  
  4. $sql = "SELECT * FROM table WHERE username = '{$username}' AND pwd = '{$pwd}'";  
  5. echo $sql;  //输出  SELECT * FROM table WHERE username = 'aaa' AND pwd = 'fdsafda' or '1'='1'  
  6. ?> 

read more

15
5

单例模式的特点.

Author Jessica     Category PHP     Tags ,

很多设计模式都把头搞大了..下面就举例说说单例模式的特点.通过跟一般的模式进行比较.你就知道单例模式的优点与特点了:)

  1. //a是一般的类  
  2. class a {  
  3. }  
  4. //b是单例模式的类  
  5. class b {  
  6.     private static $instance = null;  
  7.  
  8.     public static function getInstance() {  
  9.         if(is_null(self::$instance)) {  
  10.             self::$instance = new b();  
  11.         }  
  12.         return self::$instance;  
  13.     }  
  14. }  
  15. //申请两个a  
  16. $a1 = new a();  
  17. $a2 = new a();  
  18. if ($a1 === $a2) {  
  19.     echo 'a1和a2一样';  
  20. else {  
  21.     echo 'a1和a2不一样';  
  22. }  
  23. //申请两个b  
  24. $b1 = b::getInstance();  
  25. $b2 = b::getInstance();  
  26. if ($b1 === $b2) {  
  27.     echo 'b1和b2一样';  
  28. else {  
  29.     echo 'b1和b2不一样';  
15
6

SkiyoTabs – 简单好用的jQuery Ajax Tab插件!

Author Jessica     Category JavaScript, 本站原创     Tags

使用方法基本和jQuery的UI的Tab插件基本一样。就是因为觉得UI tab太过臃肿才写了这个简单的插件。本插件的packed的版本只有1K。
如果要使用ajax方式接收,需要指定 li 中 a 标签的rel属性。
右键打开本页面源码,基本的例子这个代码中都包括了。

演示1:http://www.koyiko.com/

演示2(含下载):http://www.skiyo.cn/demo/skiyotabs/

演示2是一个最简单的例子.下载中包含演示2这个例子.

分类目录

最近文章

最近评论

文章索引模板

标签

.net AJAX button Comet CSS Discuz! DIV+CSS Flash Form Google HTML编辑器 IE8 Java JavaScript jQuery JSP md5 MySQLReback Oracle PHP php-fpm PNG Punny SkiyoTabs tab TagCloud Vista Web2.0 Windows7 上传 加密 变量 图标 本站原创 模板 模板引擎 源码 登录 短网址 石家庄 算法 编译 面向对象 魔术方法

链接表