login接口

//表单

<form action="index.php?r=show/loginpro" method="post">
   <table border="1" align="center">
      <tr>
         <td>用户名</td>
         <td><input type="text" name="username" id="" /></td>
      </tr>
      <tr>
         <td>密码</td>
         <td><input type="password" name="pwd" id="" /></td>
      </tr>
      <tr>
         <td colspan="2" align="center"><input type="submit" value="登录" /></td>
      </tr>
   </table>
</form>
//前台控制器

 /**
    * 登录接值
    * @return [type] [description]
    */
   public function actionLoginpro(){
         $request=\Yii::$app->request;
         $data = $request->post();
         $token=md5($data['username'].'1');
         //echo $token;die;
         $qingqiu=time();
         //print_r($data);die;
         //去空
         $data1=$this->paraFilter($data);
         //print_r($data1);die;
         //排序
         $data2=$this->argSort($data1);
         //print_r($data2);die;
         //拼接
         $url="http://localhost/dashixun1/dayi/laravel/public/?sname=".$data['username']."&spwd=".$data['pwd']."&qingqiu=".$qingqiu;
         $arr=file_get_contents($url);
         //echo $arr;die;
         $ar=json_decode($arr);
         //print_r($ar);die;
         if($ar->code==1){
              if(($ar->fanhui-$ar->qingqiu)<=120){
                     if($ar->token==$token){
                        echo $ar->message."安全";

                     }
                     else{
                        echo $ar->message."不安全";
                     }
              }else{
                   echo $ar->message."不安全";
              }
         }else if($ar->code==0){
                if(($ar->fanhui-$ar->qingqiu)<=120){
                   echo $ar->message."安全";
              }else{
                   echo $ar->message."不安全";
              } 
         }else if($ar->code==2){
                 if(($ar->fanhui-$ar->qingqiu)<=120){
                   echo $ar->message."安全";
              }else{
                   echo $ar->message."不安全";
              }
         }
         //echo $qingqiu;die;         
   }


   /**
 * 除去数组中的空值和签名参数
 * @param $para 签名参数组
 * return 去掉空值与签名参数后的新签名参数组
 */
function paraFilter($para) {
   $para_filter = array();
   while (list ($key, $val) = each ($para)) {
      if($key == "sign" || $key == "sign_type" || $val == "")continue;
      else   $para_filter[$key] = $para[$key];
   }
   return $para_filter;
}
/**
 * 对数组排序
 * @param $para 排序前的数组
 * return 排序后的数组
 */
function argSort($para) {
   ksort($para);
   reset($para);
   return $para;
}

/**
 * 把数组所有元素,按照“参数=参数值”的模式用“&”字符拼接成字符串
 * @param $para 需要拼接的数组
 * return 拼接完成以后的字符串
 */
function createLinkstring($para) {
   $arg  = "";
   while (list ($key, $val) = each ($para)) {
      $arg.=$key."=".$val."&";
   }
   //去掉最后一个&字符
   $arg = substr($arg,0,count($arg)-2);
   
   //如果存在转义字符,那么去掉转义
   if(get_magic_quotes_gpc()){$arg = stripslashes($arg);}
   
   return $arg;
}
//后台接口

/**
 * 添加页面
 * @return [type] [description]
 */
   public function login(Request $request){
       $sname=$request->input('sname');
       $pwd=$request->input('spwd');
       $qingqiu=$request->input('qingqiu');
       //echo $pwd;
       $data = DB::table('user')->where('username',$sname)->first();
       //echo $data->pwd.",".$pwd;
        if(empty($data)){
           $time=time();
           $code="0";
           $message="对不起,用户名不存在!";
           $arr=array("code"=>$code,"message"=>$message,"fanhui"=>$time,"qingqiu"=>$qingqiu,"token"=>"");
       }else{
           if($data->pwd==$pwd){
               $time=time();
               $code="1";
               $message="登录成功!";
               $token=md5($sname.'1');
               file_put_contents('./'.md5($sname).'.txt',$token);
               $token1=file_get_contents('./'.md5($sname).'.txt');
              $arr=array("code"=>$code,"message"=>$message,"fanhui"=>$time,"qingqiu"=>$qingqiu,"token"=>$token1);
           }else{
               $time=time();
               $code="2";
               $message="密码错误!";
               $arr=array("code"=>$code,"message"=>$message,"fanhui"=>$time,"qingqiu"=>$qingqiu,"token"=>"");
           }
           
           
       }
       
       return json_encode($arr);
   }

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值