# dedecms文章入库GetIndexKey获取文章aid

*Published:* 2023-09-19
*Author:* 客服001

#### 温馨提醒

如果文章内容或图片资源失效，请留言反馈，我们会及时处理，谢谢

本文最后更新于2023年9月19日，已超过 180天没有更新



dede文章入库设计的比较坑爹。分了3张表插入。文章主表，文章附加表，文章微表。具体代码大家可以跟踪下的dede 源码，这里不在多述。

dede添加文章的顺序是：

1、先在文章微表里通过GetIndexKey获取[aid](https://www.xarjtc.com/tag/aid "查看aid此标签更多文章")

2、文章主表的添加id=aid

3、文章附加表添加id=aid

dede文章主表的id没设计成自动增长模式，而是通过插入文章微表获取文章微表的自动增长id，做为文章主表的id，也就是文章id。

dede获取id是通过下面这个函数实现：

```
function GetIndexKey($arcrank, $typeid, $sortrank=0, $channelid=1, $senddate=0, $mid=1)
    {
        global $dsql,$senddate,$typeid2;
        if(empty($typeid2)) $typeid2 = 0;
        if(empty($senddate)) $senddate = time();
        if(empty($sortrank)) $sortrank = $senddate;
        $iquery = "
          INSERT INTO `dede_arctiny` (`arcrank`,`typeid`,`typeid2`,`channel`,`senddate`, `sortrank`, `mid`)
          VALUES ('$arcrank','$typeid','$typeid2' , '$channelid','$senddate', '$sortrank', '$mid') ";
        $dsql->ExecuteNoneQuery($iquery);
        $aid = $dsql->GetLastID();
        return $aid;
    }
```