新的广告交换、51.la统计和web标准

May 6th, 2008

标题又有点风牛马不相及,不过还是有那么一点点关联的,再说了,一篇文章的内容相对广泛,不仅有利于SEO,而且还会给胡乱转载者以困惑,同时还不会干扰正常转载、引用的朋友,嘿嘿。

首先说今天我第一次见到的网站广告交换–BlogUpp,感觉很新颖,很方便,就顺手也弄了一个,放在右边的广告下面,感觉特点如下:

  1. 不用注册,直接输入网址,就得到一段代码,扔网站页面上就行了。
  2. 交换广告是竖向排列的两个,固定的大小和布局,至少目前没得选择,不过适合blog这种右边大条空白的情况。
  3. 加载的时候,先显示文字,然后加载图片,当然文字和图片都是从每个网站上攫取出来的,中文支持良好。
  4. 正常显示广告的情况下,一般是显示图片,鼠标滑过的时候,切换为文字内容,既用图片吸引了眼球,又能让读者根据文字内容来了解是否真的需要打开浏览,应该说这一点我觉得是它设计最好的地方。
  5. 提供两种形式的代码,一种是iframe另外一种是style+div,我鸡蛋里挑点骨头:第二种里面的=”_blank”这种用法是不符合标准的。

之所以对标准如此敏感,是因为下午刚刚为51.la统计代码无法通过验证而头疼(验证的不是本blog的页面,选用dtd是 1.0 Strict)。先来看一下这段代码吧:

<script type="text/javascript" src="http://.users.51.la/272422.“></script>
<><a href=”http://www.51.la/?272422″ =”_blank”><img alt=”&#x6211;&#x8981;&#x5566;&#x514D;&#x8D39;&#x7EDF;&#x8BA1;” src=”http://img.users.51.la/272422.asp” style=”border:none” /></a></>

w3c的validator一检查,错误就出来了,主要有两处,一处比较简单:

document type does not allow element "a" here; missing one of "p", "h1", "h2", "h3", "h4", "h5", "h6", "div", "pre", "address", "fieldset", "ins", "del" start- .

就是说a不应该出现在这里,它属于inline元素,应该被包含在block元素中云云,img也是一样,解决方法是用p或者div元素来包含他们就可以了。

而第二个不兼容就比较棘手了:

there is no attribute "” .

也就是`=”_blank”这种用法是标准不允许的,这个问题着实难解决了点。

有朋友说了,你不会用来实现么?的确,网上有解决方式是先赋予a链接rel=xxx属性,然后用判断属性再脚本运行时添加`=”_blank”属性,或者直接用打开脚本的也算一种方法。

可是各位,你们没有发现,这个链接是在<>标签中么?这个标签中的代码只有在浏览器不支持的时候才会显示,试问,在不支持的浏览器中,刚才的解决方案还能用么?

最终,我也没有更合适的解决方案,只有把`=”_blank”去掉,然后在旁边注上一行字:

<>
    <div>
        <a href=”http://www.51.la/?272422″>
            <img alt=”&#x6211;&#x8981;&#x5566;&#x514D;&#x8D39;&#x7EDF;&#x8BA1;”
                src=”http://img.users.51.la/272422.asp” style=”border:none” />
            Tips: 在新窗口中打开链接,浏览更方便(点鼠标右键)。
        </a>
    </div>
</>

我想,目前也只能用这种方式解决了吧,好在不支持的浏览器、又是人在用的(非机器人),应该不多。

其实,51.la代码的兼容性之所以被发现,之所以不得不改,也不是我吹毛求疵,而是用了之后,它的语法检查给发现的(够强大的),实在是不习惯看到一对error和warning在下面待着,“被迫”修改代码使它们更加“标准”,我想这也是的一个优点吧。

PS: 在BlogUpp缩图中我网站的首页太难看了,一个图片也没有,hmm…,有没有好一点的wordpress两栏布局模板,突出文章内容的?偶也换换?

Tags: , , , , , , , , ,

Related posts

选择Eclipse PHP Development Tools(PDT)作为PHP开发工具

May 3rd, 2008

vi虽然轻巧,但一来在图形界面下没有必要一定用纯cli的东东,二来在项目开发的环境中vi有些吃力。 Studio呢一直用着他的keygen也挺不好意思的,功能上我只能说是一般,再一般不过了,就是个图形化的编辑器,带代码提示什么的辅助功能,最有用印象最深的居然是选择多行然后用TAB整体缩进。

所以,尝试着把开发工具更换为PHP Development Tools(PDT)的大名早有耳闻,只是从来不用java,也就没有摸过。早在2004年底作项目的时候见同事用过,慢就一个字,强也是一个字。至于为何不选PHPEclipse,倒也不是听到网上一边倒的声音,而是我实在是有点不习惯它的复杂,相比之下刚出炉不久功能不全的PHP Development Tools(PDT)正和我意。

我是从官网下载的-all-in-one-R20080103--gtk.tar.gz,有点像懒人包,直接解压就能用了,功能基本上都配置好了。额外装了几个插件,都是用系统自带功能Help -> Software Updates -> Find and Instal安装的:

基本上就够我用了。这种安装方式实在是很方便,能够后台运行更方便。

配置的时候麻烦一些,其实到后来我也没弄太明白,本来想用XDebug的,不过上官网一看基本上只有for windows的二进制包,下的多半还得自己编译(网上的例子也多半是基于windows的环境,很无奈),就转向了。谁知官网上这个Debugger的链接也不好找,产品列表里根本就没有,现在这个更新/安装地址已经忘记是从哪里搞来的了,不过能用。

能用了,不过只限于 Script运行方式,如果要完整的web测试的话,还得去修改.ini加 Debugger的扩展,懒得弄了,处理得当的话需要的时候不多,一般print_r/var_dump也基本够用了。

PHP Development Tools(PDT)的编辑区比 Studio要“小”一些,因为界面的边框太“厚”了,Tab也有点大,可以在界面设置中取消圆角,能省点地方。编辑区小的问题不要紧,Ctrl-M能放到最大,加上其它窗口可以缩起来,用的时候调出来,用完自己还会缩回去,所以总体界面上还是要比 Studio要好用。

功能上,最喜欢的就是无时无刻不在的语法检查,可以迫使我们摒弃掉一些坏毛病。不过这个功能和模板合不来,像我原来模板文件都是.html扩展名的,这下可遭殃了,一大堆无法处理的错误信息。中间试过PHPEclipse,它支持模板,不过是另外分配了一个编辑器,同样也只能认.tpl扩展名,模板编辑功能几乎没有,就剩下一个模板语法高亮显示,居然还不像其它编辑窗口一样能够调整背景(我习惯把编辑区背景设置为#CCE8CF,节省眼力),索性不用了。费点功夫把所有模板都改成.tpl扩展名的,然后当一般纯文本处理,也没有什么不爽的,和css基本上都是在单独的文件中,有相应的编辑器,手工写点html code也无妨。

不过还是推荐一个PHP Development Tools(PDT)中的for 的插件smartypdt,主意虽好,但程序非常不成熟,在PHP Development Tools(PDT) 3.3上基本上没法用,先关注一下,期待以后能成熟起来吧。

最后,总体感觉虽然速度依然不快,尤其是启动速度,尤其是我调用远程主机上的项目文件,但其强大的功能足以掩盖这些缺点,还是那句话,谁用谁知道~~这几乎是我用过的可操作性最强的Java软件了。

参考

Update @ 2008-05-03

的配置都保存在workspace目录下,比如设置了的文件模板,就保存在$workspace/.metadata/.plugins/org..core.runtime/.settings/目录下的org...ui.prefs文件中。

快捷键的设置保存在org..ui.workbench.prefs中。

隐藏得好深,找了半天。

Update @ 2008-05-04

字体方面,建议选择英文等宽字体Bitstream Vera Sans Mono或者DejaVu Sans Mono,这样英文配合中文的显示效果比较好,粗体效果也不错,不影响代码的对齐,看着更舒服。

Tags: , , , , , , , , , ,

Related posts

Gregarius编辑feed时中文乱码的解决

May 2nd, 2008

编辑feeds的时候,中文总是乱码(版本r1787),其实解决方法很简单的:

找到admin/channels.这个文件,找到第900行,修改为:

//$title = htmlentities($title,ENT_QUOTES);
$title = htmlspecialchars($title, ENT_QUOTES);

这个是标题乱码的修正,再向下翻到Description部分,大概在988行左右,修改为:

// Description
//$descr = trim(htmlentities(strip_tags($descr), ENT_QUOTES));
$descr = trim(htmlspecialchars(strip_tags($descr), ENT_QUOTES));

这样就ok了。

原因很简单,htmlentities这个函数在转义到html标记的时候,会吧中文字符中一些字节也进行了转义,形成了乱码,而htmlspecialchars这个函数只转义特定的5个字符,不会存在这种情况。

之后,单引号和双引号都能输入了,但是反斜杠\仍然是不能输入的,应该是在输入处理的时候过滤掉了,或者进行了其他的转换,不过一般也用不到,就不改了。西文环境用户的处理习惯就是和我们不大一样啊。

参考

Tags: , , , , ,

Related posts

Firefox3书签中的Tags存哪儿了?

April 22nd, 2008

电脑岁数大了是不行,即使装上了号称速度有很大改观的Firefox3,我的老爷机也没快到哪儿去,这还是在一大票插件都由于不兼容被咔嚓了之后,唉。

不过Firefox3还是有些不错的新功能的,比如网址栏中的“星星”,和Gmail里面的哪个很像吧,不知道是谁家的专利,这个星星挺有意思,当你浏览到觉得不错的网站时,点一下星星就可以收藏起来了,默认是在书签的Unfiled Bookmarks文件夹中,以后可以慢慢整理;点两下星星会弹出窗口让你选保存位置,并可以输

可以说是Web 2.0的标志性特征了,也是组织和查找信息的一种有效方式,所以我就很感兴趣,这个Tags被Firefox3存到哪个文件里去了?的存储方式和 Cloud的算法我很感兴趣,也想看看FF的解决方式。

一般会把书签保存在bookmarks.html文件当中,不过Firefox3改进了,把书签放到了数据库中,文件名就叫做places.。这个文件在Firefox3运行时会以独占方式打开,关闭FF后才能用sqlite3打开。

起初没想到有什么难处,直接看,结果仔细的读了一遍也没发现哪些地方有的踪影:

  • moz_anno_attributes 注释的属性,没几行数据,不知道干啥的
  • moz_annos 目前是空的,应该是什么的注释
  • moz_bookmarks 书签项目
  • moz_bookmarks_roots 书签项目的根网站集合,新安装FF的还没数据呢
  • moz_favicons 网站图标favicon的位置
  • moz_historyvisits 哪个网站你浏览了多少次,偶的隐私啊。。。
  • moz_inputhistory 输入历史?暂无数据
  • moz_items_annos 书签的注释,也就是那个“Description:”
  • moz_keywords 关键字,和“Description:”在一个界面输入,没啥用处
  • moz_places 所有浏览的地址历史

看吧,没哪个表是和有什么关联的,可用grep一查,我标记的确实是在这个文件中,只好出绝招:

sqlite3 places. “.dump” > t.sql

然后在t.sql里面一查找,终于明白了:

INSERT INTO "moz_bookmarks" VALUES(346,2,NULL,4,2,'testtag',NULL,'',1208788891265751,1208788891362043);
INSERT INTO "moz_bookmarks" VALUES(347,1,638,346,0,NULL,NULL,NULL,1208788891361294,NULL);

就是存在了moz_bookmarks这个表中,和书签的记录混在一起。像上面这种情况,每个除了自身占一行记录之外,如果有几个书签被标记了这个,那么就还会多出几条记录-书签关联关系的记录。

窃以为这并不是存储的最佳方式,而且FF在的使用上也太简单了,目前看到的就是一个Smart Bookmarks里能按常用查网站,连 Cloud也没有。一是不知道以后的数据格式是否会改变,二是应该会有扩展来完善这块功能,期待吧。

Tags: , , , ,

Related posts

[OGame]太电还是核电?

April 21st, 2008

我算是玩得比较早的人了,tw u2出的时候就进去了,还是在1银河,现在cn服都出了很多了,我却很懒,一直趴在tw u2种地,中间还有近乎一年没上过,居然没被删号也没人打,倒是自己想起来再进去,发现堆了一大堆资源,开始转运的时候被发现了。。。这些烂事就不说了,言归正传吧。

我走的是超级堡垒路线,专注于发展主星(这样省事嘛),其它的星星都是太太往这边拉货,星上什么都不留,包括防御。主星位置是5,缺点就是太小(已经升了5级地形改造器了):

直徑  12.800 公里 (  182  / 188  方圓 )
氣溫  大約 27°C 到 67 °C

现在已经是发展的后后期(满天的死星飘啊飘)了,每一个方圆都很重要,所以,我面临着选择太电还是核电的问题。

一般来说,大家都倾向于选择太电,原因很简单,核电费重氢,太电什么都不费,并且到出引力科技的时候什么电都不够,要用一大堆太阳能卫星来补充能量(我就放了8188颗),有了这些卫星,反倒什么电厂都不用了。所以一般的讨论中,核电都是造几级就停止的。

但现在是后后期,情况就有所不同了,首先太卫随时都有可能被打掉,到那时资源也没有电也没有,就等死了,所以不能单纯依赖太卫。

再来比较一下太电和核电,官方给出了核电产能的计算公示:

30 * [核電廠等級] * (1,05 + [能量科技等級] * 0,01) ^ [核電廠等級]

那么按照我能量技术12级来计算,15级核电产能4738.50,20级核电产能13860.00,24级核电产能31168.80。

太电产能和位置有关,我是5号星,现在24级的太电,产能4727,只相当于15级核电的产能,相差9个方圆;即使是升级到了32级,也只和20级核电产能相当,而方圆相差也到了12个。

再来看核电的消耗,现在的6级核电消耗重氢107,而我26级重氢分离器产能是3550,这还是在5号温暖的星球上,这样看来,核电的消耗是非常少,能够省出来方圆,多升一级重氢分离器,就够升几级核电用的了。

所以,出于方圆的考虑,我决定废掉太电,专门升核电,省下方圆种田,嘿嘿。

另:发现另外一款游戏特洛伊,也是仿Travian的,感觉不错,已经注册,重新开始种地中。

Tags: , ,

Related posts