AIDE技术官网
AIDEZY.COM

Emlog解决文章gid断号并自动插入断号ID的方法

AIDE技术网-aidezy.com
Emlog解决文章gid断号并自动插入断号ID的方法

Emlog解决文章gid断号并自动插入断号ID的方法

前言:

今天的教程Emlog解决文章gid断号并自动插入断ID

Emlog文章的ID是使用gid自增号作为文章的ID

由于Emlog后台有删除文章的功能

如果删除文章则gid自增就会出现断号

其实解决断号问题很简单

正文:

在添加文章的时候判断gid之前的有没有断号就可以解决了

有的话直接插入没有的就自增

AIDE技术网在这里的提供两个解决方案

一、数据库修改

找到并且打开数据表emlog_blog

里面有gid序号可以手动修改(此方法不建议大家去操作,容易玩坏数据库,小白用户慎用)

Emlog解决文章gid断号并自动插入断号ID的方法|正文

二、代码修改

把gid自增段顺序读取作为值写入数组

自增段是从1开始的,但是数组键值是从0开始的

所以先把数组($gidarr[0]=’0’)赋值掉,然后使$gidarr[]=gid

只要发现$gidarr键和键值不等就是断号了

上面这个是无陌然给你大家说的一个思路

具体操作步骤如下

1、找到并且打开include/model/log_model.php文件

2、找到其中的addlog添加文章和页面函数

没改动之前的代码

/**
* 添加文章、页面
*
* @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;
}

改动之后的代码

/**
* 添加文章、页面
*
* @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;
}

好了Emlog解决文章gid断号并自动插入断号ID的教程就到这里结束了

如果你还有什么不懂的可以直接联系长或评论区留言

搜一下

赞(0) 打赏
AIDE技术网-aidezy.com 广告
AIDE技术网-aidezy.com 广告

来都来了!评论一下呗! 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址 (选填)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

切换注册

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

Q Q 登 录
切换登录

注册