Ich habe vor kurzem eine Frage gestellt, die teilweise beantwortet wurde, aber ich hatte gehofft, dass jemand das etwas klarer erklären könnte. Es betrifft PHP und die Serialisierungsfunktion.
Ich habe also ein Formular mit 12 Feldern, alle mit Namen. Traditionell verwende ich einfach die POST-Methode, sende sie an eine PHP-Seite und lege sie dann in eine Datenbank ein.
Heute bin ich auf die serialize-Methode gestoßen, aber nachdem ich sie benutzt habe, scheint es, als würde sie nichts tun, was eine reguläre POST-Anweisung tun würde. Wenn ich zum Beispiel serialisieren wollte, würde ich Folgendes tun:
%Vor%Dann, um einen Wert zu drucken, würde ich
verwenden %Vor%Was ich sehe, ist, dass ich mit oder ohne Serialisierung dieselben Ergebnisse bekomme. Fehle ich hier etwas?
Die Methode .serialize () erstellt eine Textzeichenfolge in Standard-URL-Codierung Notation. Es arbeitet mit einem jQuery-Objekt, das einen Formularsatz darstellt Elemente. Die Formularelemente können verschiedener Art sein. Lesen Sie mehr .
.serialize()
wird verwendet, wenn Sie Daten über eine AJAX-Anfrage senden. Dasselbe gilt für das Senden eines Formulars mit der Schaltfläche Senden. Nur Unterschied, wenn Sie AJAX verwenden, wird die Seite nicht aktualisiert. Das ist der Grund, warum Sie die gleichen Ergebnisse erhalten, obwohl Sie das Formular mit einem Absenden-Button oder .serialize()
bei der Verwendung von AJAX gesendet haben.
.serializeArray () wäre eine Alternative zu .serialize()
.
Remember Wenn Sie .serialize()
nicht verwenden, müssen Sie Ihre Schlüssel / Wert-Paare manuell als @Akam im obigen Kommentar erstellen.
Und schließlich
Wann verwenden Sie serialize & lt; - Wenn Sie AJAX verwenden, um Daten zu posten
Wenn regulärer POST & lt; - Wenn Sie die Senden-Schaltfläche verwenden, um Daten zu posten