药学吧搬家了,发现帝国生成的文件为空

0 个评论
今天发现药吧访问不了,一问,那边说被人黑了,所有数据包括备份数据全被删除了,没办法恢复 不过幸好前段日子药吧被黑,所以我想更换成帝国CMS,已经把数据弄回本地并转换好了 就是新模板没制作好 于是我向空间商提出换成香港空间,他答应了,很快就开好了 我上传数据后发现个大问题,帝国CMS生成的某些文件是空的 让我非常郁闷,因为是第一次用,困难重重啊 我是按照文章ID生成文件的 然后我本地生成了一次,发现一样存在这个问题 然后我开始一步一步查找原因 生成链接 http://127.0.0.23/e/admin/ReHtml/DoRehtml.php?from=ReHtml%2FChangeData.php&tbname%5B%5D=news&tbname%5B%5D=download&tbname%5B%5D=photo&tbname%5B%5D=flash&tbname%5B%5D=movie&tbname%5B%5D=shop&tbname%5B%5D=article&tbname%5B%5D=info&classid=0&startday=&endday=&selectday=2012-02-10&retype=1&startid=14999&endid=15031&havehtml=1&Submit6=%BF%AA%CA%BC%CB%A2%D0%C2&enews=ReNewsHtml 查看代码找到 ../ecmschtml.php?enews=ReNewsHtml&classid=0&from=ReHtml/ChangeData.php&retype=1&startday=&endday=&startid=14999&endid=15031&havehtml=1&reallinfotime=1328811992&tbname=news 查找ecmschtml.php里面是调用e/class/chtmlfun.php的ReNewsHtml函数 通过查找这个函数发现了真正的生成文件函数 GetHtml($r,”,1);//生成信息文件 这个函数在e/class/functions.php 通过测试我发现问题处在没办法获取模板 问题出在约2233行的这句 $add[newstempid]=$add[newstempid]?$add[newstempid]:$class_r[$add[classid]][newstempid]; $add[newstempid]为1就能生成,为0就不行,因为默认模板的ID肯定大于0的 $class_r这个数组里的参数决定了$add[newstempid] 查找$class_r,他在\e\data\dbcache\class1.php和e\data\dbcache\class.php里 一看就知道是缓存,肯定是修改栏目才会更新 然后我仔细对比了一下不能生成的文档的栏目,发现原来默认模板没设置好 让我百思不得其解的是,貌似不选会提示的啊,当时究竟是如何提交成功的 还有一点,生成空白文件,ECMS竟然没提示,幸好我发现得早,要不会给访客带来极为不好的印象 为了避免这种情况的再次发生,我自己在2233行后添加了提醒 if($add[newstempid]
2012-02-10 / 网站制作技术 / 4,196 views浏览
阅读全文

poco外链相册不错

0 个评论
找了很久才发现这个相册 垃圾百度和163都不给外链 真是够小气的 还是一些小网站好 当然有一定资本的网站最好 唉,国外的又几乎被和谐了,要不用国外的也蛮好的
2011-12-29 / 生活 / 3,366 views浏览
阅读全文

前段时间给客户做的PHPWIND登录页面

0 个评论
随便弄了一下,下面的调用修改了login.php
2011-12-28 / phpwind, 案例 / 4,621 views浏览
阅读全文

帮lugos弄的新站弄好了,花了两天时间,中英文的企业站

1 个评论
2011-12-24 / dedecms, 案例 / 6,447 views浏览
阅读全文

帮lugos做的站,现在要换皮了,留个影子纪念一下

1 个评论
当时还是用dede5.1弄的~现在升级都是个麻烦,升级了两次才成功
2011-12-24 / 案例, 网站制作技术 / 6,451 views浏览
阅读全文

发现个不错的DEDECMS首页分页

0 个评论
function multi(pagenum,tagid) { var taget_obj = document.getElementById(tagid); var taget_obj_page = document.getElementById("page_"+tagid); myajax = new DedeAjax(taget_obj,false,false,'','',''); myajax.SendGet2("/plus/arcmulti.php?mtype=0&pnum="+pagenum+'&tagid='+tagid); myajax = new DedeAjax(taget_obj_page,false,false,'','',''); myajax.SendGet2("/plus/arcmulti.php?mtype=1&pnum="+pagenum+'&tagid='+tagid); DedeXHTTP = null; } 分页 <a href='javascript:void(0)' class='current'>1</a> <a href='javascript:multi(2,"index")' title='2'>2</a> arcmulti.php自己弄一个就行了
2011-12-22 / dedecms / 3,708 views浏览
阅读全文

帮客户仿的ECSHOP模板

0 个评论
个人感觉这种企业站没必要用ECSHOP~ 但是客户要求用也没办法 改细节改了两个月~真服了他们,过个把星期就说哪里哪里又要改一下~ 两个小时弄完后就开始等下一个星期了
2011-12-18 / ecshop, 案例 / 4,512 views浏览
阅读全文

还以为手机要寿终正寝了,一直充不进电

0 个评论
然后我拆开来看了一下,发现也不是很难~但是很容易把排线什么的弄坏 所以简单弄了一下,把里面的灰尘清了一下 结果还是不能充电,我怀疑是充电器的线有问题了~ 因为以前被我不小心烤到过,不过一直都可以用,也就没注意 但是现在可能真的接触不良了 于是我下定决定把线给剪了,弄得短短的自己接上 这样就可以最大可能排除线长导致的中间断了,接触不良 弄好以后发现真的是线的问题 不过让我奇怪的是电池一点电都没有的时候 用电脑充电也不行,回想拆机的时候发现里面有颗小电池 极有可能是机子内部的电池已经老化了,在完全没电的时候也不能起作用了 类似于电脑主板那种,那小电池可以作为时间等的用电 现在这个小电池不起作用了,所以每次手机完全没电的时候 时间都会乱
2011-12-15 / 生活 / 3,927 views浏览
阅读全文

今天帮客户弄个登录界面,竟然找不到页面的CSS

0 个评论
猜想可能是在JS里,搜索了半天有人没见到 最后用出那招“另存为” 终于发现了CSS,是在引入的一个JS后莫名其妙出现的 我查看了那个JS文件,里面有个莫名其妙的函数 eval(function(p,a,c,k,e,d){while(c--){if(k){p=p.replace(new RegExp('\\b'+c.toString(a)+'\\b','g'),k)}}return p}('4.3("<2 1=\\"5\\" b=\\"6\\/0\\" a=\\"\\/9\\/8\\/7.0\\" \\/>")',12,12,'css|rel|link|writeln|document|stylesheet|text|login_css|login|images|href|type'.split('|'))) 这种命名方法很奇怪啊,一搜索才知道是加密的代码 用那个网页提供的程序解码后,内容为 document.writeln("<link rel=\"stylesheet\" type=\"text\/css\" href=\"\/images\/login\/login_css.css\" \/>") 解码程序地址:http://www.jb51.net/article/9705.htm 我复制一份以防万一 eval(function(p,a,c,k,e,d)系列解密javascript程序 <script> a=62; function encode() { var code = document.getElementById('code').value; code = code.replace(/[\r\n]+/g, ''); code = code.replace(/'/g, "\\'"); var tmp = code.match(/\b(\w+)\b/g); tmp.sort(); var dict = []; var i, t = ''; for(var i=0; i<tmp.length; i++) { if(tmp[i] != t) dict.push(t = tmp[i]); } var len = dict.length; var ch; for(i=0; i<len; i++) { ch = num(i); code = code.replace(new RegExp('\\b'+dict[i]+'\\b','g'), ch); if(ch == dict[i]) dict[i] = ''; } document.getElementById('code').value = "eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k||e(c);k=[function(e){return d[e]}];e=function(){return'\\\\w+'};c=1};while(c--)if(k)p=p.replace(new RegExp('\\\\b'+e(c)+'\\\\b','g'),k);return p}(" + "'"+code+"',"+a+","+len+",'"+ dict.join('|')+"'.split('|'),0,{}))"; } function num(c) { return(c<a?'':num(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36)); } function run() { eval(document.getElementById('code').value); } function decode() { var code = document.getElementById('code').value; code = code.replace(/^eval/, ''); document.getElementById('code').value = eval(code); } </script> <textarea id=code cols=80 rows=20> </textarea><br> <input type=button onclick=encode() value=编码> <input type=button onclick=run() value=执行> <input type=button onclick=decode() value=解码>  
2011-12-10 / 网站制作技术 / 4,207 views浏览
阅读全文

今天笔记本死机两次了,看来要清灰了

0 个评论
一次是在插了外接屏幕以后 一次是在玩CSS的时候 垃圾显卡看来还是不行啊 稍微玩一点大型的游戏就死机 为了延长笔记本寿命,还是少玩为好了 手机又充不上电,郁闷死了 弄了一个晚上才弄好,学会拆机了 不过不敢拆得太散,怕自己装不回去 能用还是先用这吧,以后再赚钱买新的
2011-12-09 / 生活 / 4,353 views浏览
阅读全文