Heim > Web-Frontend > js-Tutorial > Hauptteil

So senden Sie ein Formular mit Ajax im Lavarel-Framework

php中世界最好的语言
Freigeben: 2018-04-02 17:27:58
Original
1345 Leute haben es durchsucht

Dieses Mal zeige ich Ihnen, wie Sie ein Formular mit Ajaxim Lavarel-Framework einreichen Welche Vorsichtsmaßnahmen für das Einreichen eines Formulars mit Ajax im Lavarel-Framework gelten die praktischen Fälle. Stehen Sie auf und werfen Sie einen Blick darauf.

LaravelEinführung:

Laravel ist ein einfaches und elegantes PHP-Webentwicklungsframework (PHP Web Framework). Es kann Sie von unordentlichen Codes wie Nudeln befreien; es kann Ihnen helfen, eine perfekte Netzwerk-APP zu erstellen, und jede Codezeile kann prägnant und ausdrucksstark sein. „Entwicklung“ sollte eine kreative Kopfarbeit sein, kein langweiliger „Basiscode“.

Um es auf den Punkt zu bringen, denn Laravel muss beim Senden von Daten im Post-Formular {{csrf_field()}} hinzufügen, um Cross-Site-Angriffe zu verhindern. Daher ist es selbstverständlich, es hinzuzufügen, wenn Sie Ajax zum Senden eines Formulars verwenden.

Ich habe im Internet viele Lösungen gesehen. Ich habe es mit der folgenden Methode gelöst:

Fügen Sie zunächst ein Meta zur Vorlage hinzu:

<meta name="_token" content="{{ csrf_token() }}"/>
Nach dem Login kopieren

2 , dann füge

headers: {
'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')
},
Nach dem Login kopieren

in die Ajax-Methode ein. Ich habe die Ajax-Funktionen $().serialize() und $().serializeArray() gefunden im Code. Ich kann die Daten im Formular abrufen und direkt über Ajax übertragen. (Unwissenheit bringt alle zum Lachen)

$(form[1]).submit(function(event){
    var data = $(form[1]).serializeArray();
    // console.log(data);
    $.ajax({
      type:'post',
      url:'/basic',
      data:data,
      headers: {
  'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')
},
      success:function(msg){
        if (msg) {
          $('.basicEdit').hide();
          $('.basicShow').show();
          $('.basicShow span').html(data[1].value+' | '+data[2].value+' | '+data[3].value+' | '+data[4].value+'<br>'+data[5].value+' | '+data[6].value+' | '+data[7].value);
        }
      },
    });
    // event.preventDefault();
    return false;
  });
Nach dem Login kopieren

3 Dann in der Controller -Methode Um Daten zu erhalten, genügt $req->Ihr Formularname.

public function basic(Request $req){
   // return $req->gender;
   $uid = Auth::user()->uid;
   // return $uid;
   // $inf = new \App\Info;
   $inf = Info::where('uid',$uid)->first();
   // return $inf;
   $inf->name = $req->name;
   $inf->gender = $req->gender;
   $inf->topDegre = $req->topDegre;
   $inf->workyear = $req->workyear;
   $inf->tel = $req->tel;
   $inf->email = $req->email;
   return $inf->save()?"ok":"fail";
  }
Nach dem Login kopieren

Ob Sie es glauben oder nicht Nachdem Sie den Fall in diesem Artikel gelesen haben, haben Sie es gemeistert Weitere spannende Informationen zur Methode finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website!

Empfohlene Lektüre:

So bedienen Sie die Ajax-Post-Anfrage, um eine Seite zu springen

Wie Sie damit umgehen, wenn Ajax eine öffnet neues Fenster und wird abgefangen

Das obige ist der detaillierte Inhalt vonSo senden Sie ein Formular mit Ajax im Lavarel-Framework. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!