本帖最后由 tjhxyjtjh 于 2010-01-25 20:33 编辑
bbsxp2007sql-70uc方案直接转换后发现好多问题,看了一下改动部分代码解决,每处修改都针对一个bbsxp2007sql-70uc直接转换后出现的问题。
修改bbsxp2007sql-70uc方案的step_2.php【解决用户密码问题】
$ucpw=convertucpw($user['userpass']);
改为
$ucpw=convertucpw($user['userpassword']);
修改bbsxp2007sql-70uc方案的step_3.php【解决版区乱码问题】
$name = cutstr(htmlspecialchars(trim(@strip_tags($forum['forumname']))), 50);
改为
$name = cutstr(htmlspecialchars_decode(trim(@strip_tags($forum['forumname']))), 50);
修改bbsxp2007sql-70uc方案的step_4.php【解决丢失帖子问题,主体标题乱码问题】
$query = $db['source']->query("SELECT * FROM {$source_tablepre}Threads WHERE FormID BETWEEN $start AND $end") or dexit("检索数据表 '{$source_tablepre}Threads' 错误!<br>请将主题表 '{$source_tablepre}Threads' 字段类型为 nText 的改为 Text 类型。", 'mssql');
改为
$query = $db['source']->query("SELECT * FROM {$source_tablepre}Threads WHERE threadid BETWEEN $start AND $end") or dexit("检索数据表 '{$source_tablepre}Threads' 错误!<br>请将主题表 '{$source_tablepre}Threads' 字段类型为 nText 的改为 Text 类型。", 'mssql');
$subject = cutstr(htmlspecialchars(trim(@strip_tags($t['topic']))), 78);
改为
$subject = cutstr(htmlspecialchars_decode(trim(@strip_tags($t['topic']))), 78);
修改bbsxp2007sql-70uc方案的step_5.php【解决显示threadid错误信息问题】
$query = $db['source']->query("SELECT * FROM {$source_tablepre}postattachments WHERE threadid <> 0 AND upfileid BETWEEN $start AND $end") or dexit("检索数据表 '{$source_tablepre}postattachments' 错误!<br>请将附件表 '{$source_tablepre}postattachments' 字段类型为 nText 的改为 Text 类型。", 'mssql');
改为
$query = $db['source']->query("SELECT * FROM {$source_tablepre}postattachments WHERE upfileid BETWEEN $start AND $end") or dexit("检索数据表 '{$source_tablepre}postattachments' 错误!<br>请将附件表 '{$source_tablepre}postattachments' 字段类型为 nText 的改为 Text 类型。", 'mssql');
$pid = $a['threadid'];
改为
$pid = $a['postid'];
修改bbsxp2007sql-70uc方案的step_6.php【解决显示threadid错误信息问题,pid为空问题,HTML不能解析问题,BBCode不解析问题】
validid('threadid', $tablearray[0], '');
改为
validid('postid', $tablearray[0], '');
$query = $db['source']->query("SELECT * FROM $posttable WHERE threadid BETWEEN $start AND $end") or dexit("检索数据表 '$posttable' 错误!<br>请将帖子表 '$posttable' 字段类型为 nText 的改为 Text 类型。", 'mssql');
改为
$query = $db['source']->query("SELECT * FROM $posttable WHERE postid BETWEEN $start AND $end") or dexit("检索数据表 '$posttable' 错误!<br>请将帖子表 '$posttable' 字段类型为 nText 的改为 Text 类型。", 'mssql');
pid = $p['id'];
改为
pid = $p['postid'];
$htmlon = @strip_tags($message) == $message ? 0 : 1;
改为
$htmlon = 1;
$att = $db['source']->query("SELECT count(*) sum FROM {$source_tablepre}postattachments WHERE threadid = '$tid'");
改为
$att = $db['source']->query("SELECT count(*) sum FROM {$source_tablepre}postattachments WHERE postid = '$pid'");
$bbcodeoff = -1;
改为
$bbcodeoff = 0;
添加
$message = htmlspecialchars_decode($message);
$message = preg_replace('|'.CHR(10).'|', '<br />', $message);
$smileyoff = -1;
改为
$smileyoff = 0;
$attachment = $p1['sum'] > 0 && $p['parentid'] == 0 ? 1 : 0;
改为
$attachment = $p1['sum'] > 0 ? 1 : 0;
升级后 html 帖无法解析,开启 html 权限的必须步骤:1).开启版块 html 权限;2).开启用户组 html 权限。 |