Mensiri dan Menghantar Borang dengan jQuery dan PHP
Isu: Walaupun mensiri data borang menggunakan jQuery, data adalah tidak sampai ke pelayan.
Borang HTML:
<code class="html"><form id="contactForm" name="contactForm" method="post"> <input type="text" name="nume" size="40" placeholder="Nume"> <input type="text" name="telefon" size="40" placeholder="Telefon"> <input type="text" name="email" size="40" placeholder="Email"> <textarea name="comentarii" cols="36" rows="5" placeholder="Message"></textarea> <input id="submitBtn" type="submit" name="submit" value="Trimite"> </form></code>
JavaScript:
<code class="javascript">$("#contactForm").submit(function(e) { e.preventDefault(); // Prevent browser submission $.post("getcontact.php", $("#contactForm").serialize()) .done(function(data) { // Process server response }); });</code>
Pelayan -Side PHP (getcontact.php):
<code class="php">$nume = $_POST["nume"]; $email = $_POST["email"]; $telefon = $_POST["telefon"]; $comentarii = $_POST["comentarii"];</code>
Penyelesaian Masalah:
Isu timbul daripada menggunakan pilihan kaedah pengangkutan dalam $.post( ) (tidak digunakan dalam jQuery 3.0). Sebaliknya, gunakan $.ajax() dengan tetapan berikut:
<code class="javascript">$.ajax({ type: "POST", url: "getcontact.php", data: $("#contactForm").serialize(), dataType: "json", success: function(data) { // Process server response }, error: function() { // Handle errors } });</code>
Dalam kod yang dikemas kini ini:
Atas ialah kandungan terperinci Mengapakah data borang bersiri jQuery saya tidak sampai ke pelayan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!