2016-08-20 2 views
2

Hallo ich Laravel Code bin mit dem E-Mail zu überprüfen, ist einzigartig oder nicht, und am vorderen Ende i jquery bin mit wie folgt:Jquery Validierung für doppelte E-Mail mit Laravel

blade.php page 
user_email: { 
                required: true, 
                email: true, 
                remote: { 
                 url: base_url + "/validate_email", 
                 type: "post" 
                } 
               }, 

und auf Post habe ich die folgenden Verfahren validation_email in der Steuerung:

function validate_email(Request $request) { 
     if ($request->input('user_email') !== '') { 
      if ($request->input('user_email')) { 
       $rule = array('user_email' => 'Required|email|unique:users'); 
       $validator = Validator::make($request->all(), $rule); 
      } 
      if (!$validator->fails()) { 
       die('true'); 
      } 
     } 
     die('false'); 
    } 

Aber wenn ich die E-Mail ausfüllen und bestätigen es zeigt einen Fehler als CsrftokenMismatch Ausnahme. Wenn ich das csrf-Token dann csrf token, dann funktioniert der Code, andernfalls wird eine Ausnahme ausgelöst. Bitte schlagen Sie mir eine Lösung für diese .. Vielen Dank

Antwort

3

Führen Sie das Token in Ihrer Anfrage in Ihrem Blade.

remote: { 
    url: base_url + "/validate_email", 
    type: "post" 
    data: { 
     _token: function() { 
     return "{{csrf_token()}}" 
     } 
    } 
    } 
+0

Hallo @SteD wo sollte ich es weitergeben .. Ich benutze jquery Validierung und es für eine einzelne ID verwenden. –

0

seiner einfachen Sie Token CSRF ist in einem Versteck Feld in der Form, nicht i de id erinnern, aber Sie können diesen Wert erhalten und es mit der E-Mail in Ihrem Post Anfrage zum Beispiel senden:

required: true, 
                email: true, 
                remote: { 
                 url: base_url + "/validate_email", 
**YOU CAN ADD THE PARAMS HERE (_id=" +$("#_id").val() +"),** 
                 type: "post" 
                } 

bassisch haben Sie das Token, das in Ihrem Formular ist, Ihre Post Anfrage hinzufügen, dieser Wert ist im Formular versteckt, ich hoffe, ich erkläre mich gut