pw_cnalbum是相册信息表,包括相册和群组里面的相册。
经过核对,相册里面的相册(atype=0)照片数量(表里photonum字段)和实际数量是一致的。但群组相册(atype=1)数量似乎不准确,不知道为什么。
第一处的照片数量差距怎么那么大呢?(70张,25张)经过查看模板(群组视图,m_galbum.htm)文件,代码如下(对应70张的那个地方):
if (empty($a)) {print
全部照片 ┊ 相册专辑
┊ 创建相册
共{$colony['albumnum']}本相册 {$photonum} 张照片
对应的php文件,也是“empty($a)”这部分,查询语句:
//是否有可上传的相册
$uploadAvaliable = false;
if (empty($a)) {
$photonum = $db->get_value("SELECT SUM(photonum) AS photonum FROM pw_cnalbum WHERE ownerid=".S::sqlEscape($cyid));
注意看它的查询条件“ownerid=".S::sqlEscape($cyid)”,也就是数据表中ownerid等于当前群组id($cyid)。然而,经过仔细研究才明白,ownerid其实分两种,意义是不一样的:属于相册的(atype=0)是用户uid,对应owner字段的用户名;而属于群组的(atype=1)是群组id,对应owner字段的群组名,只是这个群组名的更新似乎不那么及时。
