- 積分
- 158
- 金幣
- 2 個(gè)
- 社區(qū)幣
- 0 元
漸入佳境
- 貢獻(xiàn)
- 2 點(diǎn)
- 金幣
- 2 個(gè)
|
BUG反饋
| 程序版本: |
X3.4 |
| 瀏覽器: |
Chrome |
| BUG地址: |
隱藏內(nèi)容 |
| BUG截圖: |
|
| 測(cè)試用戶名: |
隱藏內(nèi)容 |
| 測(cè)試密碼: |
隱藏內(nèi)容 |
首先你發(fā)2個(gè)日志,然后將其中一個(gè)日志置頂,然后直接刪除這個(gè)置頂日志(不要取消置頂刪除)
刷新后這個(gè)帖子依然存在,如果你后臺(tái)沒設(shè)回收站,那么他顯示的是一個(gè)空白帖,如果你啟用了回收站,這個(gè)帖像似一個(gè)正常帖,但無法刪除!
如果你把發(fā)布的兩個(gè)帖子全部刪除,那么這個(gè)刪不掉的帖子也消失了,而當(dāng)你再次發(fā)新日志,這個(gè)空白帖他又出現(xiàn)了。。。
-------------------------(我是新安裝的Discuz_X3.4_SC_UTF8_20220811完整安裝版測(cè)試的,所以也沒必要提供網(wǎng)站和用戶名密碼)
我的檢查了表,是 pre_common_member_field_home 表的 stickblogs 項(xiàng)不能隨用戶刪日志而同步清除置頂信息,也就是置頂參數(shù)依然存在,我把這里的數(shù)字清空,就一切正常了。
管理員可以手動(dòng)清除,總不能我整天幫用戶清除這些數(shù)據(jù)吧?快修復(fù)吧,要瘋了!
1 貢獻(xiàn)最佳答案
https://gitee.com/Discuz/DiscuzX/pulls/1797/files
打開 source/include/space/space_blog.php
文件最底部有個(gè)
- function blog_get_stick($uid, $stickblogs, $summarylen) {
- $list = array_flip($stickblogs);
- if($stickblogs) {
- $data_blog = C::t('home_blog')->fetch_all($stickblogs);
- $data_blogfield = C::t('home_blogfield')->fetch_all($stickblogs);
- foreach($data_blog as $curblogid=>$value) {
- $value = array_merge($value, (array)$data_blogfield[$curblogid]);
- $value['message'] = getstr($value['message'], $summarylen, 0, 0, 0, -1);
- $value['message'] = preg_replace("/&[a-z]+\;/i", '', $value['message']);
- if($value['pic']) $value['pic'] = pic_cover_get($value['pic'], $value['picflag']);
- $value['dateline'] = dgmdate($value['dateline']);
- $value['stickflag'] = true;
- $list[$value['blogid']] = $value;
- }
- }
- return $list;
- }
復(fù)制代碼修改為
- function blog_get_stick($uid, $stickblogs, $summarylen) {
- $list = array();
- if($stickblogs) {
- $stickids = array();
- $data_blog = C::t('home_blog')->fetch_all($stickblogs);
- $data_blogfield = C::t('home_blogfield')->fetch_all($stickblogs);
- foreach ($stickblogs as $blogid) {
- if(!empty($data_blog[$blogid]) && !empty($data_blogfield[$blogid])) {
- $value = array_merge($data_blog[$blogid], $data_blogfield[$blogid]);
- $value['message'] = getstr($value['message'], $summarylen, 0, 0, 0, -1);
- $value['message'] = preg_replace("/&[a-z]+\;/i", '', $value['message']);
- if($value['pic']) $value['pic'] = pic_cover_get($value['pic'], $value['picflag']);
- $value['dateline'] = dgmdate($value['dateline']);
- $value['stickflag'] = true;
- $list[$value['blogid']] = $value;
- $stickids[] = $value['blogid'];
- }
- }
- if(count($stickids) != count($stickblogs)) {
- C::t('common_member_field_home')->update($uid, array('stickblogs' => implode(',', $stickids)));
- }
- }
- return $list;
- }
復(fù)制代碼
|
|