Saya benar-benar mengambil skrip Anda, memuatnya ke server saya, membuat tabel database, dan menguji skrip.
Hanya satu baris yang dimasukkan per pengiriman.
Skrip Anda berfungsi dengan benar.
Namun, ada kesalahan dalam prosedur pengujian Anda.
Saya juga memeriksa konsol Firebug dan panggilan AJAX berfungsi seperti yang diharapkan.
Kecuali Anda memiliki diagnosis lain, saya rasa saya tidak dapat membantu Anda lebih jauh.
Peringatan Bug
Ada bug dalam kode Anda yang akan menyebabkan Anda sangat sedih dalam hidup Anda di tahun-tahun mendatang...
if($stmt){
echo "thank you .we will be in touch soon";
}
else{
echo "there was an error. try again later.";
}
Ini if
pernyataan akan selalu bernilai benar sejak kueri dijalankan (kecuali tentu saja, MySQL tidak berjalan).
Yang Anda maksudkan adalah untuk melihat apakah penyisipan berhasil, dan untuk itu, Anda perlu memeriksa:
if($stmt->affected_rows){...}
$stmt->affected_rows
akan mengembalikan -1 jika gagal atau +1 jika berhasil.
Strategi Debug
(1) Tambahkan bidang tambahan di Anda dengan stempel waktu sehingga Anda dapat melihat saat catatan dimasukkan. Ini akan memberi Anda lebih banyak wawasan tentang apa yang sedang terjadi.
(2) Kosongkan meja Anda dan coba kode Anda lagi. Anda mungkin berpikir Anda mendapatkan banyak sisipan tetapi bisa juga Anda menekan tombol kirim 4 kali.