存档

2007年12月 的存档

ThinkPHP的模板

2007年12月28日

{$vo:title}

[ {$vo.create_at|toDate} {$vo:category}] 删除

{$vo.content}

这段代码中,<volist name=”list” id=”vo”>是关键。这句话的意思是进行循环输出,循环的对象是模板变量$list. 而id=’vo’的意义为在循环中,以$vo来调用$list的相应值。比如下面的例子,{$vo:category}表示一个循环需要输出的category的值。这个category需要在视图模型中进行映射,也就是XxxViewModel.class.php中使用$viewFields进行映射操作。

ThinkPHP学习 ,

更换博客服务器遇到的一些奇怪问题

2007年12月24日

因为某些原因,又将博客迁移回来~!!

弄了N久,不知道为什么一些插件使用就是有问题…………

最终给出一些解决方法。最要命的应该是SEO ALL-in-One的问题,一旦启用之后,在WP管理中Plugin页面就是白页……弄了半天,最终的解决方案是:删除除了“All_in_One开头的文件之后就可以正常使用~~”

乱七八糟

关于PHP的一个安全问题

2007年12月18日

辛辛苦苦写完的一个挖宝的活动项目,结果被ZH同学看到之后,骂的是狗血喷头!究其原因,撇开性能问题不谈,光是安全问题就是要命!

纵观整个项目,不论是GET还是POST,偶都是直接引用,从头到尾没有对其进行一丁点的判断。于是乎,最简单的问题就来了——注入漏洞!对于GET传递id的值,没有对id进行处理,对于用户需要填入的资料,更加没有进行处理。若是某些有心人想要弄我,好则修改一些数据,要是恶意一些,直接drop掉我的数据表,OK,我保证BOSS会在后面拿刀追着我砍!

暂时用了一些办法,可以比较省事的解决我这个不好的习惯。在config.php文件中包含另外一个文件secure.php,secure.php文件内容为:
foreach($_GET as $index => $content){
$_GET[$index] = addslashes($content);
}

foreach($_POST as $index => $content){
$_POST[$index] = addslashes($content);
}

将 GET和POST的值进行转移,一定程度上可以防止注入漏洞

再对一些GET值,比如id之类的,进行
$id = intval($_GET['id']);

将id值强制转换为int类型

PHP学习

PHP中对于时间的处理

2007年12月12日

我是个比较懒的人,一直以来对PHP对于时间的处理上面一直很模糊,这两天需要做这个东西,所以认真的看了一下,稍微总结了一点东西。错误在所难免,欢迎指正!

对于时间处理而言,用的最多的应该就是time()函数了,time()返回UNIX元年(1970-01-01)到现在所经过的秒数,也就是时间戳,这个就是对于时间处理的基础!另一个很好用的函数就是strtotime(),将一个字符串格式化成UNIX时间戳,也就是返回UNIX元年到字符串表示时间所经过的秒数。

有了这两个函数,对于时间的处理就好了很多。如果你需要现在一个小时后之后的时间,那么time()+3600这个就是我们所需要的时间戳,然后用date()函数格式化一下显示出来就可以了。其余时间可以照着这个样子处理。而strtotime的作用在于可以自由的输入时间,比如”2007-12-31 12:12:12″,那么可以将这个时间格式化成时间戳,然后存入数据库,需要的时候再取出来用date()进行格式化。

PS:不建议在MySql数据库中对时间进行储存,操作起来比较麻烦。当然,MySql自带的timestamp类型还是需要使用的。timiestamp返回是插入数据库的时间,在论坛发贴之类的地方使用最为方便。

Technorati 标签: ,,,

PHP学习

入门级PHP程序员面试题(总100分/47题), 看你能回答多少?

2007年12月12日

出自phpchina

PHP新手面试题总100分
简述题(50分)
1、用PHP打印出前一天的时间格式是2006-5-10 22:21:21(2分)
2、echo(),print(),print_r()的区别(3分)
3、能够使HTML和PHP分离开使用的模板(1分)
5、使用哪些工具进行版本控制?(1分)
6、如何实现字符串翻转?(3分)
阅读全文…

PHP学习

CentOS下yum安装LAMP

2007年12月7日

说句实话,Linux用作开发环境真的超级爽!不论是稳定性、系统性能还是易用性,我觉得都远远超过了Windows。如果不是怕ThinkPad不支持Linux的话,我早就把手上的笔记本也换成Linux了,太爽了!

阅读全文…

Linux相关 ,

ZendStudio在Linux下乱码解决方案

2007年12月6日

ZS确实是现在开发PHP最好用的IDE。

ZS在Windows下面虽然没有提供中文选项,但是可以通过修改c:\Documents and Settings\LorryChenls\ZDE\config_5.5\中的desktop_option.xml中<locale language=”en” country=”" variant=”"/>这一行为<locale language=”zh-cn” country=”" variant=”"/>,然后将该文件改成只读,重启ZS就发现已经变成了中文界面。

在Linux下面比较麻烦,ZS在中文系统的Linux装好之后显示的是乱码,不论语言选择为何(看不懂,随便选)!解决方案是,在”ZS安装目录/jre/lib/fonts/”新建fallback文件夹,把Windows中的字体simsun.ttc拷贝到该目录下,并将后缀名改为ttf

Done。

网上还有修改ZS字体配置什么的,还有删除JRE中字体什么的。反正我没有成功,这个是我唯一成功过的将ZS在Linux下非乱码的办法

Linux相关 ,