这几天接了个小网站的后台的编写工作,有一块是新闻发布,由于是非常小众长时间不会怎么发布新闻的站点,我想着就不用数据库而直接文件读写好了(其实也是为了图省事)。由此,网站的目录结构大多是我创建的用来存储数据的文件夹(文件目录多起来原来超麻烦。。) 然后做新闻发布的时候,后台添加的新闻,必定得按照发布时间的先后来排序的,最新发布的必须排在最前面,但是我们如果不作处理,php默认是按照文件名来排序(win和Linux下都是,你直接改文件夹的排序方式是没有用的),当然,如果是用数据库的话,完全没有问题,但是我的文件操作,要考虑。。。 于是很简单,几下他们的发布时间,存个变量,再排序输出就可以了。。但问题是,每次展示页面的时候都得排次序,很耗时,如果有永久的办法,就好了。。 <?php $count = 0; if ($dir = opendir(‘added_news’)){ while (false !== ($file = readdir($dir))) { $count ++; if($file != “.” && $file != “..”){ //echo “$file\n”; $title[$count] = $file; $title[$count] = array(‘text’=>$file, ‘updatetime’=>date(‘YmdHi’, filectime(“added_news/”.$file))); } } closedir($dir); } //时间:$title[$i]['updatetime']; $c = $count; for($i = 0; $i < $c; $i ++) for($j = [...]
Category Archives: PHP
模拟post的快感与js跨域的无力
自己的执行力从最近的几件事来看,完全是。。。用日语就是ぜんぜん不行。。。 先就刚完成的一个脚本来讲(后台是个还算简单的脚本,但整体的话也算是麻雀虽小,五脏俱全了–这里~~~~~~~~~~~) 先上图。。。(非商业网站,图片非原创 = =) 这个其实是个填词游戏的辅助查词工具,从表单就可以大概看出来~ 项目本身是某学长嘱托的,给了个国外的查词页面,但页面很凌乱,而且我们需要自己的。但是问题也很明显,这个查词系统和词库没那么好弄,那么怎么办呢?在把盗用数据库和自己实现算法推倒后,我们最终还是选择了比较方便的类似代理的形式,就是我们建个自己的页面(也就是这个),将参数投递到那个网站,再把结果抓回。 好了,项目大体就很清晰了。于是我和流氓有正对性地去找办法解决。其实我们也没有做过这种东西,只能去各处碰了。。。 第一个想法是用一个服务器脚本(Jsp或PHP)来填单传值,但是没怎么展开就想到第二个方案,纯JS(事后证明利弊都有。。。) 想用JS是因为起初我们对脚本操作表单确实一知半解,也没有什么容易下手的地方,然后恰好在查阅的时候看到JS自动填表提交的例子,于是一下子就心动了(诶。。。)最近其实就在看javascript和ajax来着(没怎么实践呢),于是毅然决然地做了。 这个方案初定的计划是用隐藏iframe来放国外额原始页面。然后给他参数并抓回结果。刚开始我们确实想得就是这么容易的,还准备一晚上就搞定来着。。然后我们开工。。。把form1的target指向form2,然后填完form1后,原始网页在form2里出现,结果就在那里,我们眼看就要到手了哇,这鸭子来得。。。hiahiahia(form2是个iframe) 诶!!!js操作iframe不能!!!!!怎么不能啊???明明这么顺理成章的事情诶。。。 “流氓”也同时抑郁了。。。 后来再深入探讨的过程中我们发现,这个就是最典型的js跨域问题。。。囧 大囧哇。。。果然是js新手。。。所谓跨域,上图= = 所以,很明显,我真的是最最最最最最最典型的跨域了 = =