<!--Ajax 送信スクリプト-->
$(function(){
//ログイン ボタンにクリック イベントを追加します
$("#login").on( 'click ',function (event) {
$.ajax({
type:"POST", //送信方法は POST
url:"{:url('checkLogin')}", //設定 データ処理送信用のスクリプトファイルのアドレス
data:$("form").serialize(), //現在のフォームのデータを送信前にシリアル化します
dataType:'json', //送信データを設定します JSON のタイプ
SUCCESS: Function (data) {// 処理前のリターン記号が 1 の場合のみ
if (data.status == 1) {// リターンの場合のみステータス値が 1 の場合、ジャンプは許可されます バックグラウンドに戻ります
Alert (data.Message); // 最初にプロンプト ボックスをポップアップ表示し、ユーザーに成功を促す
Window.location.href = "{ : url ('Index/Index')}";
} Else {// エラー情報を出力
Alert (data.message);
}
}
});
})
## user.php
<?php
namespace app\index\controller;
use app\index\controller\Base;
//use think\Controller;
use think\Request;
Use app\index\model\User as UserModel;
use think\db;
class User extends Base
{
//ログイン ページ
public function login()
{
//return $this->view->fetch();
return $this->view->fetch();
//return view();
}
//ログインの検証 $this->>validate($data,$rule,$msq) 検証する必要があるデータ、データ検証のルール、およびプロンプト検証失敗後のメッセージ
public function checkLogin(Request $request)
{
//初期戻りパラメータ
$status =0;
$result ='';
$data = $request -> param();
>'require', //パスワードが必要です
プロンプトメッセージ
$msg=[
'name'=>[ 'require'=>'ユーザー名は空にすることはできません。確認してください'],
'password'=>['require' =>'パスワードは空にすることはできません、確認してください'],
'確認 '=&gt; [
' =&gt; '検証コードエラー'、
]、
];
文字->validate($data,$rule,$msg);
//検証に合格したら実行
if ($ Result === TRUE) {
//構築クエリ条件
$map = [
'name' = & gt; $ data ['name'],
'password ' => md5($data['password'])
];
//ユーザー情報のクエリ
$user=UserModel::get($map);
if( $user == null){
$result = 'ユーザーは見つかりませんでした';
}else{
$status = 1;
$result = '検証に合格しました。[OK] をクリックして入力してください'; # }
return [ 'status'=>$status,'message'=>$result,'data'=>$data];
}
//ログアウト
public function logout(){
}
#}
#正しいアカウント パスワード確認コードを入力すると、ページが応答しなくなり、次のエラーが表示されます
joker2017-09-27 12:02:05
$result=$this->validate($data,$rule,$msg);
これは有害です。考えてみてください。これはこのリクエストとは関係がありません。ただし、3 番目のパラメータを変更して削除するか、カスタマイズされたエラー メッセージを削除すると、再度接続できるようになります。 ?