技术文摘

帝国cms8.0入库的代码,主表副表索引表等。

作者:雨祺   发表于:
浏览:96次    字数:1673  电脑原创
级别:站长   总稿:82篇, 月稿:13
帝国cms8.0入库的代码,主表副表索引表等。下面开始上代码
  1. // 准备要插入的数据 
  2.     $r = $empire->fetch1("SELECT MAX(id) as maxid FROM {$dbtbpre}ecms_submissions"); 
  3.     $newid = intval($r['maxid']) + 1; 
  4.     debug_log('生成的新ID', $newid); 
  5.     //$filename = $newid . '.html'; 
  6.     $titleurl = '/record/' . $newid . '.html'
  7.     $recordUrl = $public_r['newsurl']."record/".$newid.".html"// 生成记录URL,用于发送给response,连接到记录表内容页 
  8.     // 插入主表数据 
  9.     $sql = $empire->query("INSERT INTO {$dbtbpre}ecms_submissions(id,news_id,classid,filename,titleurl,newstime,title,user_input,prompt,model_used) VALUES( 
  10.         '$newid'
  11.         '$id'
  12.         '2',    
  13.         '$newid'
  14.         '$titleurl'
  15.         '" . time() . "'
  16.         '" . addslashes($title) . "'
  17.         '" . addslashes(json_encode(array_map('strval', (array)$user_input), JSON_UNESCAPED_UNICODE | JSON_INVALID_UTF8_IGNORE)) . "'
  18.          '" . addslashes($prompt) . "'
  19.         '" . addslashes($custom_settings['api']['deepseek']['model']) . "' 
  20.     );"); 
  21.     if (!$sql) { 
  22.         debug_log('主表数据保存失败', $empire->error()); 
  23.         throw new Exception('保存记录失败'); 
  24.     } 
  25.     // 插入副表数据 
  26.     $sql = $empire->query("INSERT INTO {$dbtbpre}ecms_submissions_data_1(id,classid,api_response) VALUES( 
  27.         '$newid'
  28.         '2'
  29.         '" . addslashes($formatted_response) . "' 
  30.     );"); 
  31.     if (!$sql) { 
  32.         debug_log('副表数据保存失败', $empire->error()); 
  33.         // 删除主表数据 
  34.         $empire->query("DELETE FROM {$dbtbpre}ecms_submissions WHERE id='$newid'"); 
  35.         throw new Exception('保存响应数据失败'); 
  36.     } 
  37.     // 插入索引表数据 
  38.     $sql = "INSERT INTO {$dbtbpre}ecms_submissions_index(id,classid,checked) VALUES( 
  39.         '" . addslashes($newid) . "'
  40.         '2'
  41.         '1' 
  42.     );"; 
  43.     debug_log('插入索引表SQL', $sql); // 打印SQL语句 
  44.     if (!$empire->query($sql)) { 
  45.         debug_log('索引表数据保存失败', $empire->error()); 
  46.         // 删除主表和副表数据 
  47.         $empire->query("DELETE FROM {$dbtbpre}ecms_submissions WHERE id='$newid'"); 
  48.         $empire->query("DELETE FROM {$dbtbpre}ecms_submissions_data_1 WHERE id='$newid'"); 
  49.         throw new Exception('保存索引数据失败'); 
  50.     } 
  51.     // 更新栏目信息 
  52.     $empire->query("UPDATE {$dbtbpre}enewsclass SET allinfos=allinfos+1,infos=infos+1 WHERE classid='2'"); 
  53. debug_log('数据保存成功', ['id' => $newid]); 
因帝国CMS8.0迟迟没有发布正式版,而部分站长又急切升级到8.0.那小编讲解7.5升级8.0的另一非官方方法。教程如下:

前提程序没做过二次开发的,
直接安装新的8.0后,把老的数据库,栏目和模板备份后导入就可以。
栏目表包含class,模板是temp,直接导出这几个表导入新的就可以。
还有新闻列表按出错提示手动加几个字段就可以了

【审核人:站长】

99Ai聊天   收藏   加好友   海报   43分享
点赞(0)
打赏
标签:帝国CMS帝国

发布者资料

热门文章

技术文摘

查看更多技术文摘
    首页
    栏目
    搜索
    会员
    投稿