折腾了半天的zend framework,发现zend入门太难.虽然已经算是入了门,可开发起来还是很累.想到以前用过的CodeIgniter,开发速度很快.小巧易用.听说新版支持了php5.于是转去用CI来开发. 以前用过,所以不用到处找文档,CI文档本来就挺全的.配置url的时候遇到点麻烦,直接抄论坛里的.htaccess文件,居然报500错误,以为是mac os的配置不同,后来换到windows居然也一样,百思不得其解.到处找文章,都是同一个文件.同样的配置.别人就行. 无奈之下在论坛里那个帖子里翻来翻去,翻到最后一页的时候,有人说了一句坑爹,终于明白是怎么回事了.RewriteCond里只有一个斜杠,但被LZ写成了两个,难怪会500错误. 正确的.htaccess文件如下: RewriteEngine on RewriteCond $1 !^(index\.php|images|robots\.txt) RewriteRule ^(.*)$ /index.php/$1 [L] 花了一个小时,订餐的小程序开了个头.
Tag Archives: php
CodeIgniter 去掉URL里的index.php
11-十一-11Zend Framework 一
23-十-11今天 再一次拿起Zend Framework,一直认为Zend framework的官方教程难懂,照着抄都无法运行。这次找到一个非官方的,反正挺有名的,再次证明老外的东西就是好。 教程看这里:http://akrabat.com/zend-framework-tutorial 总结一下Zend Framework要怎么用。 首先要配置好开发环境,php的运行环境就不讲了,喜欢用套件的用套件,不喜欢用套件的就自己配,反正能运行php就行了。然后,配置zend Framework,截一段教程里的原文: Extractthedownloadedarchivefile,ZendFramework-1.11.10-minimal.zipinyourDownloads directory by double clicking on it. Copyto/usr/local/ZendFrameworkClibyopeningTerminalandtyping: sudo cp -r ~/Downloads/ZendFramework-1.11.10-minimal /usr/local/ ZendFrameworkCli Edit your bash profile to provide an alias: • From Terminal, type: open ~/.bash_profile • Addaliaszf=/usr/local/ZendFrameworkCli/bin/zf.shtotheendofthefile • Save and exit TextEdit. • Exit Terminal. 执行zf show version,能看到 Zend Framework Version: 1.11.10 [...]
opencart 商品的breadcrumb问题
23-九-11opencart 1.4.9.6版本商品从不同的路径进入,面包屑显示的也不同,例如,从首页进入,breadcrumb只会显示 首页->XX商品,若从分类进入,则又会显示 首页->分类一->分类二->XX商品,对于这种做法有点不爽,于是,自己动手改改。 在/catalog/model/category.php文件中加入以下代码: public function getCategories1($parent_id) { $category_data = $this->cache->get(‘category.path.’ . $this->config->get(‘config_language_id’) . ‘.’ . $parent_id); if (!$category_data) { $category_data = array(); $query = $this->db->query(“SELECT *,c.category_id as `path` FROM ” . DB_PREFIX . “category c LEFT JOIN ” . DB_PREFIX . “category_description cd ON (c.category_id = cd.category_id) WHERE c.parent_id = ‘” . (int)$parent_id [...]
Drupal 6自定模块中Form记忆上次提交的数据。
20-九-11Drupal 6中自己写了个模块,其中有block有page也有form。一切都挺,目前就缺一个from提交之后,不能记住提交的值,这个在普通PHP程序中只要判断$_POST,$_GET,$_REQUEST之类的就行了,再手工赋上去,Drupal里不知道要它动作的原理,一时之间无法下手。 经过研究,在xxx_form()函数中也可以判断$_POST这样的变量,这下就好办了。只要再赋回去就好了。 ‘#default_value’=>$_GET['xxx'] 完工。 ======================================================== 华丽的分割线之后,发几名牢骚,今日早晨,发现停在车库里的电动车不见了,妈的,这下上班麻烦了,骑电动车要一个钟头的路程,现在没了车,得两个钟头了。 那倒霉的车库装了探头,竟然只开三个小时,夜里面是关上的。靠,你装探头有屁用。 想省钱也不能这样啊。 探头才烧几个钱啊。你赔辆车得几个钱。真他妈的不会算帐。 以后得在车上也装个探头,即时上传到网络上。 那些偷车的人真是,钱没多少,关键是耽误事情。 今天心情极差。
修改Opencart 1.5.1.1的购物车流程
05-九-11只能算是个小技巧,因为根本就没改什么程序。 1.5.1.1版本的opencart在checkout流程上用了ajax方式来分六站完成订单操作,因些,想改流程就先看js代码。 checkout功能的tpl文件在catalog\view\theme\default\template\checkout下的checkout.tpl文件里。 在第601行,有个$(‘#button-guest’).live()方法,这里面就是未注册用户的购物流程,如果想改会员的购物流程,去上面的几个方法里找找就有了。 这里,我们想当用户填完付款人的一些信息之后,即第二步的信息填完之后就直接到确认的那一步,那么,查看了一下代码之后,发现,第661行之后,就是我们想要的。 这里,我们在第670行的success的方法里,去掉了#shipping-method展开事件件,然后直接模拟了#button-shipping的单击事件,让它自动往下走,在后面的几个事件函数里,同样,去掉div的展开,缩回效果,直接模拟点击事件,最终直接打开#confirm。 原理上只是将手工点击按钮的事件自动化,让所有必填的内容都用上默认值,这样,整个流程就可以通过了。 另外,别忘了修改payment.tpl文件,把agree这个checkbox默认设为选中。