杰奇jieqi 的opf问题,wap端读取opf数据不是最新的

很奇怪的一个错误, 经过简单的核查, 发现出现这种错误的小说占那么一部分.

大致情况是这样
我的小说站数据pc/wap 是共用一个的, pc端一点问题都没有.
而在wap有的小说是没问题的, 有问题的则是打开目录没有问题, 前一部分章节没有问题, 但是后面的章节内容 点之后出现类似PC端404的意思. 给浏览器的显示页面还是当前小说的目录页(没有调出小说内容页), 但是很多数据已经没了, 比如所属类别, 小说名, 最新章节.

仔细检查发现了下面的问题:
1. 出问题的章节, 应该都是类似PC的404页面, 但是却可以调用出部分数据.
2. A小说共100章, 第51章出了问题, 那么在第50章内容页, 点下一章的时候, !!!发现提交的URL是当前小说的目录页.!!!

根据 modules/article/wapreader.php?aid=57549&cid=9345391

查看到 wapreader.php 里面

if(!$package->showChapter($_REQUEST[‘cid’]))
{
echo __LINE__;die();
$package->showIndex();
}

知道应该是  $package->showChapter函数的问题

进而查找 class/wappackage.php 里面
function showChapter($cid)
{
global $jieqiConfigs;
global $jieqi_file_postfix;
$i=0;
$num=count($this->chapters);
while($i<$num){
$tmpvar=$this->getCid($this->chapters[$i][‘href’]);
if($tmpvar==$cid){
$this->makeHtml($i+1, true, true);
return true;
}
$i++;
}
return false;
}

应该是循环后得到了false值,那么为什么呢,说明 $this->chapters 这个值里面没有$_REQUEST[‘cid’]的参数,那么 $this->chapters 从何而来呢,
发现 loadOPF() 函数读取 index.opf ,得到 chapters的数组,里面包含的章节的标题和地址,那么只需要更新这个 index.opf 就能得到最新的数据,那么
$tmpvar=$this->getCid($this->chapters[$i][‘href’]);
就能得到某个章节的值了.
问题解决

jieqi 杰奇的图片水印增加在四角同时添加水印

杰奇的小说图片上传后可以加水印,目前的上中下左中右,随机都有了

现在需求是加在四角都有 修改 lib/image/imagewater.php

原来代码

$temp_wm_image = $this->getPos($src_image_w,$src_image_h,$this->wm_image_pos,$wm_image);
$wm_image_x = $temp_wm_image["dest_x"];
$wm_image_y = $temp_wm_image["dest_y"];

imagecopymerge($src_image, $wm_image,$wm_image_x,$wm_image_y,0,0,$wm_image_w,$wm_image_h,$this->wm_image_transition);

// 1 = top left 上左
// 2 = top middle 上中
// 3 = top right 上右
// 4 = middle left 中左
// 5 = middle 中中
// 6 = middle right 中右
// 7 = bottom left 下左
// 8 = bottom middle 下中
// 9 = bottom right 下右
// 10 = rand 随机

知道我们只要在 1 3 7 9 位置加就可以了

重复上面的代码 4次就可以搞定了。

QQ截图20130407134936

 

mysql 数据库索引问题,杰奇 cms 的jieqi_article_article表

“SELECT * FROM jieqi_article_article WHERE display=0 AND size>0 AND lastvisit>=1343750400 ORDER BY monthvisit DESC LIMIT 0, 30”

上面的sql 需要对jieqi_article_article 增加索引 index_display_monvisit  在 display 和 monthvisit

方法 alter table jieqi_article_article add INDEX index_display_monvisit(`display`,`monthvisit`);

总结,形式如 select * from table where a = N1 and b = N2 order by c  ;

在 a 和 c 做复合索引,可以消除filesort