yii2框架 自带搜索 ,分页(功能强大)CURD

view/index.php


<?php
use yii\widgets\ActiveForm;

?>
<?php  $form=ActiveForm::begin()?>
<table class="table">
    <tr>
        <td>用户名</td>
        <td><input type="text" placeholder="username" name="username"></td>
    </tr>
    <tr>
        <td>密码</td>
        <td>
            <input type="password" placeholder="password" name="pwd">
        </td>
    </tr>

    <tr>
        <td>性别</td>
        <td>
            <input type="radio" name="sex" value="男">男
            <input type="radio" name="sex" value="女">女
        </td>
    </tr>
    <tr>
        <td><input type="submit" value="login" class="btn btn-success"></td>
    </tr>
</table>
<?php ActiveForm::end()?>

view/show.php

<?php
use yii\widgets\ActiveForm;
use yii\helpers\Html;
use yii\helpers\Url;
use yii\widgets\LinkPager;
use yii\base;
?>
<?php
$form=ActiveForm::begin([
    'action'=>Url::toRoute(['show']),
    'method'=>'get',
]);
echo '姓名:'.Html::input('text','username');//可以写第三个值,相当于value保留值,但是添加成功不显示&username,能力强大的人可以解决一波
echo "<br/>";
echo "<br/>";
echo Html::submitButton();

ActiveForm::end();echo "<br/>";
?>
<table border="1">
    <tr>
        <td>ID</td>
        <td>用户名</td>
        <td>密码</td>
        <td>性别</td>
        <td>操作</td>
    </tr>
    <?php foreach ($users  as  $user):  ?>
        <tr id="<?php echo $user['id'] ?>">
            <td><?php echo $user['id']  ?></td>
            <td><span class="name"><?php echo $user['username']  ?></span></td>
            <td><?php echo $user['pwd']  ?></td>
            <td><?php echo $user['sex']  ?></td>
            
<td><a href="?r=curd/del&id=<?php echo  $user['id']?>">删除</a>||<a href="?r=curd/update&id=<?php echo  $user['id']?>">修改</a> </td>
</ tr <?php endforeach ?> </ table > <?php echo  LinkPager:: widget ([   'pagination' => $pages ,   'nextPageLabel' => '下一页' ,   'firstPageLabel' => '首页' ]) ?>  

view/update.php


<?php
use yii\widgets\ActiveForm;
use yii\helpers\Url;
use yii\helpers\Html;
?>
<?php
$form=ActiveForm::begin([
    'action'=>Url::toRoute(['updated']),
    'method'=>'post',
]);
echo '姓名:'.Html::input('text','username',$one['username']);
echo ''.Html::input('hidden','id',$one['id']);
echo "<br/>";
echo "<br/>";
echo '密码:'.Html::input('password','pwd',$one['pwd']);
echo "<br/>";
echo "<br/>";
echo Html::submitButton("提交");

ActiveForm::end();echo "<br/>";
?>


Curd/controller

<?php

namespace frontend\controllers;

use Yii;
use \yii\db\Query;
use frontend\models\Curd;
use yii\data\Pagination;
use yii\base;

class CurdController extends \yii\web\Controller
{
    /**
     * @return string
     * 添加
     */
    public function actionIndex(){
       $request=Yii::$app->request;
        if(Yii::$app->request->isPost){
            $data=$request->post();
            $model=new Curd;
            $res=$model->addUser($data);
            if($res){
                //跳转方法
                $this->redirect (array("show"));
            }else{
                echo "<script>alert('添加失败');location.href='?r=curd/index'</script>";
            }
        }else{
            //跳转到view层
            return $this->render("index");
        }
    }

    /**
     * @return string
     * 展示
     */
    public function actionShow(){
        $where=Yii::$app->request->get();
        $query=new Query();
        $query->from('user');
        if(!empty($where['username'])){
            $query->andWhere(['username'=>$where['username']]);
        }
        $users=$query->from('user')->all();
        $pages = new Pagination(['totalCount' =>$query->count(),'pageSize'=>'5']);
        $users = $query->offset($pages->offset)->limit($pages->limit)->all();
        return  $this->render('show',['users'=>$users,'where'=>$where,'pages'=>$pages]);
    }

    /**
     * @throws \yii\db\Exception
     * 删除
     */
    public function actionDel(){
        $id=Yii::$app->request->get("id");
        $del=\Yii::$app->db->createCommand()->delete("user","id=:id",[':id'=>$id])->execute();
        if($del){
            $this->redirect (array("show"));
        }else{
            echo "<script>alert('删除失败');location.href='?r=curd/show'</script>";
        }
    }

    /**
     * @return string
     * 修改
     */
    public function actionUpdate(){
        $id=Yii::$app->request->get("id");
        //绑定单个防注入参数
        $one=\Yii::$app->db->createCommand("SELECT * FROM user where id=:id")->bindValue(":id",$id)->queryOne();
        //传id到修改页面
         return $this->render("update",["one"=>$one]);
    }
    public function actionUpdated(){
        $arr=Yii::$app->request->post();
        $db = \Yii::$app->db->createCommand()->update('user',[
            'username'=>$arr['username'],
            'pwd'=>$arr['pwd'],
        ],'id=:id',[':id'=>$arr['id']])->execute();
       if($db){
           echo "<script>alert('修改成功');location.href='?r=curd/show'</script>";
       }else{
           echo "<script>alert('修改失败');location.href='?r=curd/show'</script>";
       }
    }
}

models/curd.php

<?php

namespace frontend\models;

use Yii;
use yii\base\Model;
use common\models\User;

class Curd extends \yii\db\ActiveRecord
{


    public function addUser($data){
         $db = \Yii::$app->db->createCommand();
        return $db->insert("user",[
            'username'=>$data['username'],
            'pwd'=>$data['pwd'],
            'sex'=>$data['sex'],
        ])->execute();
    }
}
转自:https://blog.csdn.net/qq_36373262/article/details/53400368
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值