時計坂一刻館三号室

归类于 程式::五代 的日志存档

破掉 Vlog ……

屈超(沙滩凉鞋) 发表于 2006 年 4月 2 日 21 时 34 分

Vlog 最近更改了 FLV 影片加载路径……
用了一种类似 SESSION 的方式……
每个 IP 必须获得唯一的 KEY 才能获得正确的播放地址……
而地址又使用 KEY 和 IP 的组合加密方式……
所以貌似是非静态存储的……
搞到实际存储的地址有难度……
所以我采取与其相同的机密方式来动态获取影片地址……
但问题出现了……
Action Script 的 LoadVars 函式有跨域限制……
所以我编写了 PHP 程式来完成获取实际地址的操作……
终于……
可以在“本地”播放和下载 Vlog 的视频了……
(只能在本地是因为服务器和客户端 IP 相同……
才能通过 UNIQUE KEY 获取影片地址)

下一步是争取实现任意服务器下载播放……
无奈大叔 Action Script 才刚开始学习……
好多工作只能靠 PHP 完成……
A ZA …………
争取早日释出完美版……

===============

就在 3rd Apr, 2006 这天……
大叔彻底把它破了……
说“破”真的很惭愧……
因为大叔自己把他们的加密方式想得太复杂……
不管怎么样……
大伙以后有的看了……

暂无评论 | 永久链接 | Trackback | RSS 2.0

忙碌并快乐着……

屈超(沙滩凉鞋) 发表于 2006 年 4月 1 日 1 时 02 分

今周的大叔还是很忙……
何时是个尽头哟……
不想了……

我来回忆下本周发生过什么……

哎呀呀……
手机坏掉鸟……
最近可别在我面前提手机二字……
小心我发飙……

再就是幺幺NDS 终于安全寄到……
这样我也成了“掌机全有哥”了……
灭活活活活活……
(可惜这玩意还是要还给幺幺的……
老天…… 让 NDSL 赶快降价吧……)

令人气愤的是……
vLog 更改了它的 FLV 储存路径……
导致大叔的视频播放器失效了几天……
(市面上盗取 vLog 视频文件的播放器统统失效了……)
大叔研究发现虽然现在也能找到实际储存地址……
但是文件名已经过乱码加密……
瞪着眼睛分析半天还是没能看出什么规律……
无奈只好从现在开始手动更新左边的视频……
因为实际存放文件名暂时还无规律可寻……
SIGH……

PS:写日志时已到了愚人节……
祝你们节日快乐……
啊哈哈哈哈哈……

2 则评论 | 永久链接 | Trackback | RSS 2.0

vBulletin && CMSware && Shopex

屈超(沙滩凉鞋) 发表于 2006 年 3月 28 日 22 时 16 分

前两天动网动易Oblog 联合发布了战略联盟公告……
大概是中文 ASP 领域的大件事了吧……
他们的目标明显瞄准了论坛+CMS+Blog 的标配用户……
结果今天我终于拿到 vBulletinCMSware 还有 Shopex 三方整合的接口文档……
这样的组合够重量级吧……
当然比起上面的三个 ASP 程式起来……
我们的合作深度明显稍低……
但是论坛+CMS+商城的组合相信会是很多企业级站点的首选……

具体我还没有和对方的程序员谈……
因为 vBulletin 中文使用的 UTF8 编码……
所以接口方面不知应该是谁“照顾”谁……
细谈以后再说吧……

3 则评论 | 永久链接 | Trackback | RSS 2.0

又是大叔的今周

屈超(沙滩凉鞋) 发表于 2006 年 3月 26 日 0 时 54 分

大叔的今周

说实话……
俺上初中那会儿写周记都没这么准时……
明明紧急赶工中……
还抽空来写这玩意儿……
大叔,您真内行!

首先呢,本周给 Blog 换了新的播放器……
然后开始进入新的漫画回顾阶段……
另外还抽空把王狐狸的 PP 全部 Down 到了硬盘上……
总共居然有 356P ……
令人残念的是:PSP 3 月大作基本无望……
大伙儿还是早点买回家收藏吧……

洗洗睡了……

暂无评论 | 永久链接 | Trackback | RSS 2.0

完善而成熟的网站构建流程……

屈超(沙滩凉鞋) 发表于 2006 年 3月 22 日 22 时 19 分

在一葉の千鳥的 Blog 那儿看到此流程

  1. 产品制作人,写产品计划书。
  2. 用户体验研究员,作调查分析。
  3. 信息建构师,设计产品架构。
  4. 互动设计师,作出互动流程。
  5. 视觉设计师和用户界面设计师,作出页面视觉设计。
  6. 前台工程师,前台开发。
  7. 后台工程师,后台开发。
  8. 用户体验研究员,做用户测试确保质量。

看得凉鞋我心惊啊……
一直以来这些角色都由俺一人担任……
太不符合社会化分工的要求了……
而 VB 中文团队内部的合作通常也是“全能型”操作流程……
换句话说:少哪一个都成……
不知是该欣喜还是悲哀……

2 则评论 | 永久链接 | Trackback | RSS 2.0

彻夜未归……

屈超(沙滩凉鞋) 发表于 2006 年 3月 12 日 23 时 00 分

和朋友谈点儿事儿……
不知是“时差问题”(大叔偶是中国人用着米国人的时间……)
还是自己有“择床而眠”的习惯……
昨天没睡着……
还好随身带着 PDA ……
看了半部小说……(《孔雀》…… 不错……)
终于感觉到困了……
ZZzz………..

早上回来更新了 Blog 的版本……
从 2.0.1 -> 2.0.2 ……
毋庸运行脚本……
直接覆盖更新文件即可……

和大叔一样 Hack 比较多的同学可以点这里查看变动列表……
更懒一点的同学可以直接点这里下载 DIFF 文件……

暂无评论 | 永久链接 | Trackback | RSS 2.0

大叔的今周……

屈超(沙滩凉鞋) 发表于 2006 年 3月 11 日 1 时 20 分

大叔的今周

刚遗矢回来……
突然想起来要写本周滴东西鸟……
嗯……今周还蛮丰富滴嘛……

首先呢……
对这个 Blog 进行了一些改动……
然后时隔 N 年之后再次中了小田老师的毒……
最后还是回归到《心跳》的感动之中……

嗯……
大叔真会忙里偷闲……

7 则评论 | 永久链接 | Trackback | RSS 2.0

昨晚顿开的茅塞……

屈超(沙滩凉鞋) 发表于 2006 年 2月 28 日 13 时 30 分

注:真的不是“茅厕”……
取这个抬头真麻烦……
NND……

昨晚大叔研究 C 语言……
本想找出“ELSE IF”和“ELSEIF”的真正意义差别……
(因为实际使用效果是没有差别的……)
结果发现了一个以前从未注意过的问题:
“逻辑表运算符的优先次序 & 表达式的执行顺序”……

这两个问题综合到一起……
可以写出优美简洁的程式……
比如判断闰年:

  1. $year = 1985;
  2. if ((!($year % 4) && $year % 100) || !($year % 400)) {
  3. echo "$year is a leap year.";
  4. } else {
  5. echo "$year is not a leap year.";
  6. }

得到的输出是:1985 is not a leap year.
(用脚趾头也能算出来吧……)
至于为何说程序很优美简洁呢?
大叔来分析一下:

首先,我们确定一点……
闰年是少于一般年份的……
所以程序应该倾向于“排除”……

其次,我们看 “||” 符号……
根据其特性……
当左边的“!($year % 4) && $year % 100”值为 True 时……
就用不着做右边“$year % 400”的真值判断……
(显然,能被 4 整除且不能被 100 整除的年份比能被400整除的年份要多得多……
这样可以最大限度的避免执行右边的真值判断……)

再次,再看左边的“&&”符号……
根据其特性……
当只有当左边的“!($year % 4)”为 True 时……
才需要做右边“$year % 100”的真值判断……
(再显然,能被 4 整除的年份要比不能被 100 整除的年份少得多……)
这样也可以最大限度得避执行右边的真值判断……

如此这般那么以后……
大伙是否懂了呢?

如果哪位高人有不同看法……
麻烦面刺寡人……
谢鸟……

6 则评论 | 永久链接 | Trackback | RSS 2.0

搞掂了 GXNA……

屈超(沙滩凉鞋) 发表于 2006 年 2月 21 日 10 时 33 分

早就想把 Gameach 重构为聚合器形态……
但是苦于没有时间……
终于在假期结束的最后一……
花了两个小时汉化并构建起来……
用的 Gregarius ……
原因是:效率比较好……

GXNA Beta 1 的版本是用 Lilina ……
文本数据……
个人觉得效率不够……

当然不是说 Gregarius 就很完善……
最完善的应该在凉鞋的大脑中吧……
啊哈哈哈哈哈……
在自己写出来之前……
先用着吧……

3 则评论 | 永久链接 | Trackback | RSS 2.0

我还真没注意 Where 的问题……

屈超(沙滩凉鞋) 发表于 2006 年 2月 16 日 22 时 52 分

看你知道不知道之-你注意Where子句的次序了吗? 【转】

我们通常不太注意SQL语句中Where子句的次序问题,但是这个次序往往会影响整个SQL语句的执行性能,举个例子吧。
比如有一个表有3个列,分别是班级、学号、姓名。
表中的数据共100条,其中1班50人,学号从1到50,二班50人,学号从1到50。
那么现在的任务是在表中找到1班学号为10的学生,查询语句就有两种写法。
1:

  1. Select 姓名 From 学生表 Where 班级=1 And 学号=10

2:

  1. Select 姓名 From 学生表 Where 学号=10 And 班级=1

虽然返回的结果一样,但是这两个到底那个好呢?
衡量一个Sql语句好与坏,主要看性能,而影响Select语句的通常是Table Scan,我们来看看到底执行了几次Table Scan。
1:100+50=150,首先扫描全表找到50个1班的,然后早扫描50次找到学号为10的。
2:100+2=102,首先扫描全表找到2个10号的,然后扫描2次找到班级为1班的。
呵呵,这就说明在Where子句中应该先处理查询范围大的,然后处理查询范围小的,就像开车下坡是越来越快的。
当然这个也并不绝对,因为如果优化了索引,Table Scan就会减轻,并根据索引进行Where子句的优化,但是无论是否索引,我们都应该养成这个好习惯,难道不是吗?

越来越多的接触到一些大型站点的数据库设计……
效率是个大问题……
总想着如何从新技术(如AJAX)上面来节省服务器负载……
却忽略优化 SQL 语句本身这一点……
作个笔记……
下次给我注意着点儿!!!

暂无评论 | 永久链接 | Trackback | RSS 2.0

播放器加载中……
读取中……
图书数据加载中……
读取中……
剧集数据加载中……
读取中……
专辑数据加载中……
读取中……
Firefox Download Day 2008
歌曲数据加载中……
读取中……
通讯方式加载中……
读取中……
QR Code 加载中……
读取中……