Yii针对添加行的增删改查操作示例

时间:2021-05-02

本文实例讲述了yii针对添加行的增删改查操作。分享给大家供大家参考,具体如下:

效果图:

控制器:

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 <?php namespace backend\controllers; use yii; use yii\web\controller; use backend\models\zhan; class indexcontroller extends controller { //显示页面 public function actionindex() { $index=new zhan(); //接受值 if($_post) { $a=yii::$app->db; //判断是否有删除ids if(yii::$app->request->post('ids')) { $ids=yii::$app->request->post('ids'); $str=''; for($i=0;$i<count($ids);$i++) { if($a->createcommand()->delete('zhan',['id'=>$ids[$i]])->execute()) { $str++; } } if($str!='') { echo '<script>alert("删除成功");location.href="index.php?r=index/index"</script>'; } } else { //判断是否有id传值 $cid=yii::$app->request->post('cid'); $xu_ids=yii::$app->request->post('xu_id'); //print_r($id);die; //添加行的数据 $names=yii::$app->request->post('zhan_name'); $ulrs=yii::$app->request->post('url'); //遍历数组 foreach($names as $k=>$v) { if(!empty($cid[$k])) { $c_id=$cid[$k]; //echo $c_id;die; $url=$ulrs[$k]; $xu_id=$xu_ids[$k]; $name=$v; $res=$a->createcommand()->update("zhan",['zhan_name'=>$name,'url'=>$url,'xu_id'=>$xu_id],"id=$c_id")->execute(); //数据可能没被修改,只有成功一条就改变标记的值 if($res) { echo '<script>alert("修改成功");location.href="index.php?r=index/index"</script>'; } } else { $url=$ulrs[$k]; $xu_id=$xu_ids[$k]; $name=$v; $res=$a->createcommand()->insert("zhan",['xu_id'=>$xu_id,'zhan_name'=>$name,'url'=>$url])->execute(); //数据可能没被修改,只有成功一条就改变v标记的值 if($res) { echo '<script>alert("添加成功");location.href="index.php?r=index/index"</script>'; } } } } } else { //查询数据 $models=zhan::find()->orderby(['xu_id'=>'asc'])->asarray()->all(); //var_dump($models); return $this->renderpartial("show",['models'=>$models]); } } } ?>

视图层:

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 <center> <form action="index.php?r=index/index" method="post"> <input name="_csrf" type="hidden" id="_csrf" value="<?= yii::$app->request->csrftoken ?>"> <table> <tr> <td>id</td> <td>显示顺序</td> <td>站点名称</td> <td>站点url</td> </tr> <?php foreach ($models as $key => $v) {?> <tr> <input type="hidden" name="cid[]" value="<?php echo $v['id']; ?>" /> <td><input type="checkbox" name="ids[]" class='ids' value="<?= $v['id'] ?>"></td> <td><input type="text" name="xu_id[]" value="<?= $v['xu_id'];?>"></td> <td><input type="text" name ='zhan_name[]'value="<?= $v['zhan_name'];?>"></td> <td><input type="text" name="url[]" value="<?= $v['url'];?>"></td> </tr> <?php }?> <tr> <td><a href="javascript:void(0)" onclick="add(this);">+添加友情链接</a></td> <td><input type="checkbox" onclick="jian(this);">删除?</td> </tr> <tr> <td><input type="submit" value="提交" ></td> </tr> </table> </form> </center> <script src="style/jquery.js"></script> <script> //添加一行 function add(ts) { var tr=$(ts).parent().parent(); var newtr='<tr><td></td><td><input type="text" name="xu_id[]"></td><td><input type="text" name="zhan_name[]"></td><td><input type="text" name="url[]"></td><td><input type="button" value="删除该行" onclick="del(this);"></td></td></tr><br />'; tr.after(newtr); } //删除当前行 function del(ts) { $(ts).parent().parent().remove(); } //删除所有 function jian(ts) { var ids=$('.ids'); //alert(ids.length); for(var i=0;i<ids.length;i++) { if(ts.checked==true) { ids[i].checked=true; } else { ids[i].checked=false; } } } </script> </head>

希望本文所述对大家基于yii框架的php程序设计有所帮助。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章