编辑,自动保存

V层

<?php
?>
  <center>
             <h4>个人日记</h4>

      <form id="form" action="?r=stud/drf_new" method="post">
   <table class="table">
       <input type="hidden" id="_csrf" name="_csrf" value="<?php echo yii::$app->request->csrfToken?>"/>
<!--       <input type="hidden" id="_csrf" name="--><?php //echo Yii::$app->request->csrfParam;?><!--" value="--><?php //echo yii::$app->request->csrfToken?><!--">-->
               <tr>
                   <td>题目</td>
                   <td><input type="text" class="sub" name="subject" value="<?php if(isset($data)){ echo $data['subject'];} ?>"/></td>
               </tr>
               <tr>
                   <td>内容</td>
                   <td><textarea name="content" class="con" id="" cols="120" rows="10"><?php if(isset($data)){echo $data['content'];}?></textarea></td>
               </tr>
<!--               <tr>-->
<!--                   <td>时间</td>-->
<!--                   <td><input type="text" name="time"/></td>-->
<!--               </tr>-->
               <tr>
                   <td></td>
                   <td>
                       <input type="submit" value="保存"/>
                       <input type="reset" value="重置"/>
                   </td>
               </tr>


   </table>
      </form>
  </center>

<script src="jquery.1.12.js"></script>

<script>
    function save_draft(){
        var data=$('#form').serialize();
        $.ajax({
            'url':'<?php echo \yii\helpers\Url::to(['stud/dra_new'])?>',
            'type':'post',
            'success':function(e){
                alert(e)
            },
            'error':function(){},
            'data':data,
            'dataType':'json',
            'async':true,
        });
         //setTimeout('save_draft()',5000);
       setInterval('save_draft()',5000);
    }
    $(function(){
        save_draft();
    })
</script>
----------------------------------------------
C层

//新增日记自动保存到草稿表ajax
  public function actionDra_new(){
      //接收用户id
      $l_id=yii::$app->session->get('l_id');
     //接收数据
      $res = yii::$app->request->post();
      //var_dump($res);die;
      //自定义state值为1,默认为0
      $state=1;

       //通过state字段查询草稿表
         $datak=yii::$app->db->createCommand("select * from draftzk1 where state='$state'")->queryOne();
       // var_dump($datak);die;
      //如果有值,
      if(!isset($datak['state'])){
          //组装数组
          $data=array(
              'l_id'=>$l_id,
              'subject'=>$res['subject'],
              'content'=>$res['content'],
              'state'=>$state,
          );
          $db=yii::$app->db->createCommand()->insert('draftzk1',$data)->execute();
      }else{
          //组装数组
          $data=array(
              'l_id'=>$l_id,
              'subject'=>$res['subject'],
              'content'=>$res['content'],
              'state'=>$state,
          );
          $db=yii::$app->db->createCommand()->update('draftzk1',$data,'state='.$state)->execute();
      }
  }
    //=====================================================
    //新增日记至日记表(form提交)
      public function actionDrf_new(){
          //获取用户id
          $l_id=yii::$app->session->get('l_id');
          //接收数据
          $res = yii::$app->request->post();
          //var_dump($res);die;
          //处理数据
          $data=array(
              'l_id'=>$l_id,
              'subject'=>$res['subject'],
              'content'=>$res['content']
          );
          //入库
          $db=yii::$app->db->createCommand()->insert('diaryzk1',$data)->execute();

              //删除草稿表的内容
              $db=yii::$app->db->createCommand("delete from draftzk1 where state=1")->execute();

          if($db){
              $this->redirect(['stud/dia_list']);
          }else{
              $this->redirect(['stud/diary']);
          }

      }
//===================================================
修改页面的自动保存
V层
<?php
?>
<center>
    <h4>编辑日记</h4>

    <form id="form" action="?r=stud/dia" method="post">
        <table class="table">
            <input type="hidden" name="d_id" value="<?php echo $change_one['d_id']?>"/>
            <input type="hidden" id="_csrf" name="_csrf" value="<?php echo yii::$app->request->csrfToken?>"/>
            <!--       <input type="hidden" id="_csrf" name="--><?php //echo Yii::$app->request->csrfParam;?><!--" value="--><?php //echo yii::$app->request->csrfToken?><!--">-->
            <tr>
                <td>题目</td>
                <td><input type="text" class="sub" name="subject" value="<?php echo $change_one['subject']?>"/></td>
            </tr>
            <tr>
                <td>内容</td>
                <td><textarea name="content" class="con" id="" cols="120" rows="10"><?php echo $change_one['content']?></textarea></td>
            </tr>
            <!--               <tr>-->
            <!--                   <td>时间</td>-->
            <!--                   <td><input type="text" name="time"/></td>-->
            <!--               </tr>-->
            <tr>
                <td></td>
                <td>
                    <input type="submit" value="保存"/>
                    <input type="reset" value="重置"/>
                </td>
            </tr>


        </table>
    </form>
</center>
<script src="jquery.1.12.js"></script>
<script>
function save_draft(){
var data=$('#form').serialize();
$.ajax({
'url':'<?php echo \yii\helpers\Url::to(['stud/draft'])?>',
'type':'post',
'success':function(e){
alert(e)
},
'error':function(){
},
'data':data,
'dataType':'json',
'async':true
});
setInterval('save_draft()',5000);
}
$(function(){
save_draft();
})
</script>
//=======================
C层
/===============================================================
    //编辑后添加日记(form提交)
    public function actionDia()
    {
        //获取用户id
        $l_id=yii::$app->session->get('l_id');
        //接收数据
        $res = yii::$app->request->post();
        //var_dump($res);die;
        //处理数据
        $data=array(
            'l_id'=>$l_id,
            'subject'=>$res['subject'],
            'content'=>$res['content']
        );
           if(isset($res['d_id'])){
                //如果日记表里存在idd_id的数据
               //执行修改
               $db=yii::$app->db->createCommand()->update('diaryzk1',$data,'d_id='.$res['d_id'])->execute();
               $d_id=$res['d_id'];
               //删除草稿表的内容
               $db=yii::$app->db->createCommand("delete from draftzk1 where d_id='$d_id'")->execute();
           }else{
               //入库
               $db=yii::$app->db->createCommand()->insert('diaryzk1',$data)->execute();

           }
        if($db){
            $this->redirect(['stud/dia_list']);
        }else{
            $this->redirect(['stud/edit']);
        }

    }



//-------------------------------------------------------------------------------
    //编辑日记
    public function actionEdit()
    {
        //接收日记id
        $d_id=yii::$app->request->get('id');
        //var_dump($d_id);die;
        //查询草稿表
        $datak=yii::$app->db->createCommand("select dr_id,d_id from draftzk1 where d_id='$d_id'")->queryOne();
        //判断日记id
        if(isset($d_id)&&$d_id==$d_id and isset($datak['d_id'])==$d_id){
            //根据日记id查询草稿表数据
            $change_one=yii::$app->db->createCommand("select * from draftzk1 where d_id='$d_id'")->queryOne();
        }else{
            //根据日记id查询数据
            $change_one=yii::$app->db->createCommand("select * from diaryzk1 where d_id='$d_id'")->queryOne();
            //var_dump($change_one);die;
        }
        return $this->render('edit',['change_one'=>$change_one]);
    }




    //===========================================================
    //编辑日记添加至草稿ajax
    public function actionDraft(){
        //接收ajax传来的数据
        $res=yii::$app->request->post();
        //var_dump($data);die;
        //接收用户id
        $l_id=yii::$app->session->get('l_id');
              //接收文章id
          $d_id = $res['d_id'];
            //处理数据
            $data=array(
                'd_id'=>$res['d_id'],
                'l_id'=>$l_id,
                'subject'=>$res['subject'],
                'content'=>$res['content'],
              );

        //判断文章id ,先查询数据库中的文章id(问题判断空数据库
        $datak=yii::$app->db->createCommand("select dr_id,d_id from draftzk1 where d_id='$d_id'")->queryOne();
        //判断草稿表有没有数据(自增id        if(!isset($datak['dr_id']))
        {
            //如果草稿表没有数据执行添加
            $db=yii::$app->db->createCommand()->insert('draftzk1',$data)->execute();
        }
        else
        {
                //如果草稿表有数据判断d_id(日记的id)与传的id是否相等
                    if($datak['d_id']==$d_id){

                        //对草稿表进行修改
                        $db=yii::$app->db->createCommand()->update('draftzk1',$data,'d_id='.$d_id)->execute();
                    }
                    else
                    {

                        //否则进行添加
                       $db=yii::$app->db->createCommand()->insert('draftzk1',$data)->execute();
                    }
        }
    }





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值