EMLOG解决文章GID断号并自增断号ID的方法

  • 内容
  • 相关

6F59423A-74FC-40FD-BA71-29248ECA5F95.jpeg

使用EMLOG的站长想必都知道,由于EMLOG使用GID自增号作为文章ID,因此一旦删除文章就会断掉,那么有没有办法解决文章GID断号的问题呢?

实际上,对于EMLOG文章GID断号的问题解决起来并不难,只要在添加文章的时候进行简单的判断就可以了,判断当前GID之前有无断号问题,有断号就优先选择断号的文章ID,没有的话直接自增就可以了。

一、操作原理

将GID自增顺序读取作为值写入到数组中,自增段从1开始,但数组值从0开始,因此需要先将数组($gidarr[0]='0')赋值掉,然后把$gidarr[]=gid,只要发现$gidarr键和键值不等,就是存在断号的情况了。

二、操作方法

找到include/model/log_model.php文件,替换相关代码

1、原始代码

/**
* 添加文章、页面
*
* @param array $logData
* @return int
*/
function addlog($logData) {
$kItem = array();
$dItem = array();
foreach ($logData as $key => $data) {
$kItem[] = $key;
$dItem[] = $data;
}
$field = implode(',', $kItem);
$values = "'" . implode("','", $dItem) . "'";
$this->db->query("INSERT INTO " . DB_PREFIX . "blog ($field) VALUES ($values)");
$logid = $this->db->insert_id();
return $logid;
}

2、替换代码

/**
* 添加文章、页面
*
* @param array $logData
* @return int
*/
function addlog($logData) {
$kItem = array();
$dItem = array();
foreach ($logData as $key => $data) {
$kItem[] = $key;
$dItem[] = $data;
}
$field = implode(',', $kItem);
$values = "'" . implode("','", $dItem) . "'";
$gidarr[0]='0';
$res = $this->db->query("SELECT gid From " . DB_PREFIX . "blog ORDER BY gid ASC");
while ($row = $this->db->fetch_array($res)) {
$gidarr[] = $row['gid'];
}
foreach($gidarr as $key=>$val){
if($key!=$val){
$field = 'gid,'.$field;
$values = "'".$key."',".$values;
break;
}
}
$this->db->query("INSERT INTO " . DB_PREFIX . "blog ($field) VALUES ($values)");
$logid = $this->db->insert_id();
return $logid;

三、注意事项

1、使用本教程前,如果确认使用的是EMLOG 5.3.1版本且没有对源代码进行过修改,可以下载博客志改好的文件直接覆盖同名文件

文章来源:博客志

本文标签:

版权声明:若无特殊注明,本文皆为《彭Sir》原创,转载请保留文章出处。

本文链接:EMLOG解决文章GID断号并自增断号ID的方法 - http://pengsirs.com/post-65.html

收录状态:[百度已收录][等待360收录][搜狗已收录]

上一篇:Emlog博客小程序-Brief2.0 下一篇:声浪模拟器

发表评论

电子邮件地址不会被公开。 必填项已用*标注

允许邮件通知

评论

2条评论
  1. 热搜 Lv.1 回复

    文章不错支持一下吧

    广西贺州市 联通

    1. 彭Sir Lv.1 回复

      EMLOG解决文章GID断号并自增断号ID的方法

      湖北省随州市 联通

      网站备案相关信息
      域名 pengsirs.com
      主办方名称 彭松
      主办单位性质 个人
      主体备案号 鄂ICP备19010459号
      ICP备案号 鄂ICP备19010459号-1
      首页地址 http://pengsirs.com/ [备案查询]
      网站名称 遇上更好的你
      审核时间 2019/4/24 0:00:00