php教程

超轻量级php框架startmvc

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

更新时间:2020-03-13 03:55:12 作者:startmvc
本文实例讲述了Yii针对添加行的增删改查操作。分享给大家供大家参考,具体如下:效果图

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

效果图:

控制器:


<?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]);
 }
 }
}
?>

视图层:


<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 添加行 增删改查