如何使用面膜CN492B9ХХХХХХ添加独特的代码

时间:2013-12-28 12:42:01

标签: php mysql yii

我需要像CN492B9ХХХХХ这样向数据库添加代码,其中XXXXXX编号以000000开头,每个数据递增1。 这是我的控制器

public function actionCreate()
    {
        $model=new DeliveyInfo;

        // Uncomment the following line if AJAX validation is needed
        // $this->performAjaxValidation($model);

        if(isset($_POST['DeliveyInfo']))
        {
            $model->attributes=$_POST['DeliveyInfo'];
            if($model->save())
                $this->redirect(array('view','id'=>$model->id));
        }

        $this->render('create',array(
            'model'=>$model,
        ));
    }

我支持模特

public function beforeSave() {
    if ($this->isNewRecord)
        $this->code = sprintf('CN492B9%06d', $this->id);
    return parent::beforeSave();
}

但是没有身份证号码。我在哪里可以获得新记录?

1 个答案:

答案 0 :(得分:2)

不要那样做。在数据库表上有一个简单的AUTO_INCREMENT列,提供递增的数字,然后format it in your front end code,看看你需要它。

$formatted = sprintf('CN492B9%06d', $integer_from_database);