名副其实
  1. [co de]$ '[/co de]
复制代码

去掉这段代码中所有的空格并将其编辑入帖子后,这段代码会复制当前文本中在其之下几行的内容
另:在插入一些代码时会显示类似 [ __DISCUZ_CODE_5__ ] 字样的内容,问题同样出现在使用 code 代码时。

w6vDqw
本帖最后由 w6vDqw 于 2022-9-18 10:57 编辑

我懂了。草,刚刚发出来吓死我了。
不过我在自己本地站点试了下,结果如下:


经测试:油猴关闭了之后问题依旧。

以下内容为图片中源码放进本坛的表现。

名副其实
w6vDqw 发表于 2022-9-18 10:49
我懂了。草,刚刚发出来吓死我了。
不过我在自己本地站点试了下,结果如下:
...

在MCBBS中这段代码会直接消失并替换为下面几行的内容。
可能是 Discuz 通用的BUG?

w6vDqw
名副其实 发表于 2022-9-18 10:53
在MCBBS中这段代码会直接消失并替换为下面几行的内容。
可能是 Discuz 通用的BUG? ...

并不是。我本地站点也基于Discuz。
也许是魔改了之后出的问题吧。

名副其实
w6vDqw 发表于 2022-9-18 10:58
并不是。我本地站点也基于Discuz。

你之前展示的内容里已经跳出
[        DISCUZ_CODE_1        ]

这样的内容了

w6vDqw
名副其实 发表于 2022-9-18 10:59
你之前展示的内容里已经跳出
这样的内容了

嗯,那个是在本坛出现的问题,图片中的内容是我在本地发的。
给你看看我本地的帖子编辑模式的源码吧。

MCBBS的V2模版据前技术与产品称是魔改过的,而且目前本是3.5,我的也是,应该是有冲突。

SHEEP_REALMS
经过测试,三种引号( ' " ` )均有类似故障,且故障发生在帖子提交之前,初步推断为 JavaScript 字符串拼接出错,具体原因不明,暂未发现注入风险。

CaveNightingale
本帖最后由 CaveNightingale 于 2022-9-18 20:52 编辑
SHEEP_REALMS 发表于 2022-9-18 15:58
经过测试,三种引号( ' " ` )均有类似故障,且故障发生在帖子提交之前,初步推断为 JavaScript 字符串拼 ...

这不是很简单嘛


左边是MCBBS有问题的codetag函数,右边是原版discuz!的没BUG的codetag函数,很明显看到MCBBS的少写了两个美元符号
用正常的codetag函数替换mcbbs的
  1. function codetag(text, br) {
  2.   var br = !br ? 1 : br;
  3.   DISCUZCODE['num']++;
  4.   if (br > 0 && typeof wysiwyg != 'undefined' && wysiwyg) text = text.replace(/<br[^\>]*>/gi, '\n');
  5.   text = text.replace(/\$/gi, '$$$$');
  6.   DISCUZCODE['html'][DISCUZCODE['num']] = '[code]' + text + '[去掉/code]';
  7.   return '[\tDISCUZ_CODE_' + DISCUZCODE['num'] + '\t]';
  8. }
复制代码
  1. $'
复制代码
修完了,BUG不再复现