yii数据的增删改查


//1.模型

<?php 
	namespace backend\models;
	
	use Yii;
	use yii\db\ActiveRecord;
	
	class Classify extends ActiveRecord{
		public static function tableName(){
			return 'classify';
		}
		public function rules(){
			return [
				['name','required','message'=>'分类名不能为空','on'=>['add','datail']],
				['order','required','message'=>'排序不能为空','on'=>['add','datail']],
				['status','required','message'=>'状态不能为空','on'=>['add','datail']]
			];
		}
		public function attributeLabels(){
			return [
				'name'=>'分类',
				'order'=>'排序',
				'status'=>'状态'
			];
		}
		public function add($data){
			$this->scenario='add';
			if($this->load($data) && $this->validate()){
				$this['createtime']=time();
				if($this->save()){
					return 1;
				}else{
					return 0;
				}
			}else{
				return 0;
			}
		}
		public function detail($data){
			$this->scenario='datail';
			if($this->load($data) && $this->validate()){
				$this['updatetime']=time();
				if($this->save(false)){
					return 1;
				}else{
					return 0;
				}
			}else{
				return 0;
			}
		}
	}
?>


//2.控制器


<?php 
	namespace backend\controllers;
	
	use Yii;
	use yii\web\Controller;
	use yii\helpers\Url;
	use backend\models\Classify;
	
	class ClassifyController extends Controller{
		public $layout='mains';
		public function actionIndex(){
			$model=Classify::find()->all();
			return $this->render('index',[
				'model'=>$model
			]);
		}
		public function actionAdd(){
			$model=new Classify();
			if(Yii::$app->request->isPost){
				$req=Yii::$app->request;
				$post=$req->post();
				$res=$model->add($post);
				if($res){
					Yii::$app->session->setFlash('success','添加成功');
					return $this->redirect(['index']);
				}else{
					Yii::$app->session->setFlash('error','添加失败');
				}
			}else{
				
			}
			return $this->render('add',[
				'model'=>$model
			]);
		}
		public function actionDetail(){
			$id=Yii::$app->request->get('id');
			$model=Classify::find()->where(['id'=>$id])->one();
			if(Yii::$app->request->isPost){
				$req=Yii::$app->request;
				$post=$req->post();
				$res=$model->detail($post);
				if($res){
					Yii::$app->session->setFlash('success','修改成功');
					return $this->redirect(['index']);
				}else{
					Yii::$app->session->setFlash('error','修改失败');
				}
			}
			return $this->render('add',[
				'model'=>$model
			]);
		}
		
		public function actionStatus(){
			$id=Yii::$app->request->get('id');
			$model=Classify::find()->where(['id'=>$id])->one();
			if($model){
				$status=$model['status']==1?0:1;
				$model->status=$status;
				if($model->save()){
					return \json_encode(['data'=>2,'res'=>'修改成功','state'=>$status]);
				}else{
					return \json_encode(['data'=>1,'res'=>'修改失败','state'=>0]);
				}
			}else{
				return \json_encode(['data'=>0,'res'=>'修改失败','state'=>0]);
			}
		}
		public function actionDel(){
			$id=Yii::$app->request->get('id');
			$model=Classify::find()->where(['id'=>$id])->one();
			if(Classify::deleteAll(['id'=>$id])){
				Yii::$app->session->setFlash('success','删除成功');
				return $this->redirect(['index']);
			}else{
				Yii::$app->session->setFlash('error','删除失败');
			}
		}
		
	}
?>


//3.添加视图和修改视图(添加和修改用的是一个视图add.php)


<?php 
	use yii\helpers\Url;
	use yii\widgets\ActiveForm;
	$model['status']=$model['status']==''?1:$model['status'];
?>
<div class="main" style="width: 1200px;margin: 0 auto;margin-top: 100px;">
	<?
		$form=ActiveForm::begin([
			'fieldConfig'=>[
				'template'=>'<div class="form-group">{label}{input}{error}</div>'
			]
		]);
	?>
		<?=$form->field($model,'id')->hiddenInput(['class'=>'form-control','id'=>'exampleInputEmail1'])->label(false)?>
		<?=$form->field($model,'name')->textInput(['class'=>'form-control','id'=>'exampleInputEmail1'])?>
		<?=$form->field($model,'order')->textInput(['class'=>'form-control','id'=>'exampleInputEmail2'])?>
		<?=$form->field($model,'status')->radioList(['1'=>'正常','0'=>'禁止'])?>
		<button type="submit" class="btn btn-default">提交</button>
	<?php
		ActiveForm::end();
	?>
</div>


//4.数据展示


<?php 
	use yii\helpers\Html;
	use yii\helpers\Url;
?>
<!-- <div class="alert alert-success" role="alert">
	<div class="container" style="padding: 0;">
		<a href="<?=Url::to(['add'])?>" class="alert-link">添加用户</a>
	</div>
</div> -->
<div class="main" style="width: 1200px;margin: 0 auto;margin-top: 50px;">
	<table class="table table-condensed">
		<tr>
			<th>分类名</th>
			<th>状态</th>
			<th>添加时间</th>
			<th>修改时间</th>
			<th>排序</th>
			<th>操作</th>
		</tr>
		<?php 
			foreach($model as $key=>$val){
		?>
			<tr>
				<td><?=$val['name']?></td>
				<td id="fun<?=$val['id']?>" onclick="fun(<?=$val['id']?>)"><?=$val['status']==1?"<button type='button' class='btn btn-success'>正常</button>":"<button type='button' class='btn btn-danger'>禁止</button>"?></td>
				<td><?=date('Y-m-d H:i:s',$val['createtime'])?></td>
				<td><?=$val['updatetime']==''?'无':date('Y-m-d H:i:s',$val['updatetime'])?></td>
				<td><?=$val['order']?></td>
				<td>
					<a href="<?=Url::to(['detail','id'=>$val['id']])?>" class="glyphicon glyphicon-pencil"></a>
					<a href="<?=Url::to(['del','id'=>$val['id']])?>" class="glyphicon glyphicon-trash" style="margin-left: 20px;"></a>
				</td>
			</tr>
		<?php 
			}
		?>
	</table>
</div>
<script>
	function fun(id){
		$.get("<?=Url::to(['status'])?>",{id:id},function(data){
			dat=JSON.parse(data);
			if(dat.data=='0'){
				alert(dat.res);
			}else if(dat.data==1){
				alert(dat.res);
			}else if(dat.data==2){
				if(dat.state==1){
					$('#fun'+id).html("<button type='button' class='btn btn-success'>正常</button>");
				}else{
					$('#fun'+id).html("<button type='button' class='btn btn-danger'>禁止</button>");
				}
			}
		})
	}
</script>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

原克技术

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值