Heim > Backend-Entwicklung > PHP-Tutorial > Warum sendet mein jQuery-serialisiertes Formular keine Daten an mein PHP-Skript?

Warum sendet mein jQuery-serialisiertes Formular keine Daten an mein PHP-Skript?

Barbara Streisand
Freigeben: 2024-11-02 22:25:03
Original
514 Leute haben es durchsucht

Why is my jQuery serialized form not sending data to my PHP script?

Serialisieren und Senden eines Formulars mit jQuery und PHP

Problem:

Ein serialisiertes Formular Bei Verwendung von jQuery können keine Daten an ein PHP-Skript gesendet werden. Der Server empfängt keine Daten.

HTML-Formular:

`




`

JavaScript:

<code class="javascript">$("#contactForm").submit(function() {
  $.post("getcontact.php", $("#contactForm").serialize())
    .done(function(data) {
      // handle response
    });

  return false;
});</code>
Nach dem Login kopieren

Serverseitiges PHP (getcontact.php):

<code class="php">$nume = $_REQUEST["nume"]; // empty
$email = $_REQUEST["email"]; // empty
$telefon = $_REQUEST["telefon"]; // empty
$comentarii = $_REQUEST["comentarii"]; // empty</code>
Nach dem Login kopieren

Lösung:

Ersetzen Sie den jQuery.post()-Code durch Folgendes:

<code class="javascript">var datastring = $("#contactForm").serialize();
$.ajax({
  type: "POST", // method
  url: "your url.php", // action
  data: datastring, // form data
  dataType: "json", // expected response type
  success: function(data) {
    // handle response
  },
  error: function() {
    // handle error
  }
});</code>
Nach dem Login kopieren

Zusätzliche Hinweise:

  • Setzen Sie dataType auf „jsonp " für domänenübergreifende Anfragen.
  • Verwenden Sie beforeSend und vollständige Rückrufe für Aktionen vor und nach der Anfrage.
  • Erwägen Sie die Verwendung von async: false für synchrone Anfragen.
  • Deaktivieren Caching mit Cache: false.
  • Weitere Informationen finden Sie in der offiziellen Dokumentation.

Update

  • var_dump($_POST ) sollte ein leeres Array zurückgeben.
  • Das Problem kann serverbedingt sein, z. B. eine falsch konfigurierte PHP.ini-Datei oder deaktivierte Datei-Uploads.

Das obige ist der detaillierte Inhalt vonWarum sendet mein jQuery-serialisiertes Formular keine Daten an mein PHP-Skript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage