简体   繁体   English

无法使用PHP Ajax将数据插入MySQL

[英]can't insert data into mysql using php ajax

I have trouble when insert data into mysql. 将数据插入mysql时遇到麻烦。 I'am using 3 file to do it home.php , ajax.js and proses_simpan.php 我正在使用3个文件来执行home.phpajax.jsproses_simpan.php

home.php home.php

<form id="form">                                                
    <div class="form-group">
        <input type="text" class="form-control" id="nama" name="nama" placeholder="Nama">
    </div>
    <div class="form-group">                                
        <input type="text" class="form-control" id="alas_hak" name="alas_hak" placeholder="Alas Hak">
    </div>
</form>
<button type="button" class="btn btn-primary" id="btn-simpan">Simpan</button>

ajax.js ajax.js

$("#btn-simpan").click(function(){ 
    var data = new FormData();      
    data.append('nama', $("#nama").val());
    data.append('alas_hak', $("#alas_hak").val()); 

    $.ajax({
        url: 'proses_simpan.php', 
        type: 'POST', 
        data: data, 
        processData: false,
        contentType: false, 
        dataType: "json",

        beforeSend: function(e) {
            if(e && e.overrideMimeType) {
                e.overrideMimeType("application/json;charset=UTF-8");
            }
        }
    });
});

proses_simpan.php proses_simpan.php

<?php   
    include "koneksi.php";

    $nama = $_POST['nama']; 
    $alas_hak = $_POST['alas_hak'];

    $sql = $pdo->prepare("INSERT INTO tbl_pengadaantanah(nama,alas_hak) 
            VALUES(:nama,:alas_hak)");

    $sql->bindParam(':nama', $nama);
    $sql->bindParam(':alas_hak', $alas_hak);
    $sql->execute();
?>

when insert data, only nama is stored. 插入数据时,仅存储nama but alas hak isn't stored and null value in database 可惜HAK不存储在数据库中的空值

please help me. 请帮我。 what should I do? 我该怎么办? thanks 谢谢

Change proses_simpan.php to see if you got an error in your sql. 更改proses_simpan.php以查看您的sql是否出现错误。

<?php   
    include "koneksi.php";

    try {
        $nama = $_POST['nama']; 
        $alas_hak = $_POST['alas_hak'];

        $sql = $pdo->prepare("INSERT INTO tbl_pengadaantanah(nama,alas_hak) 
                VALUES(:nama,:alas_hak)");

        $sql->bindParam(':nama', $nama);
        $sql->bindParam(':alas_hak', $alas_hak);
        $sql->execute();
    }
    catch(PDOException $e){
        echo $e->getMessage();
    }
?>

It's always helpful to have a try/catch while developing. 在开发过程中进行尝试/捕获总是很有帮助的。 The rest of your files looks good. 您的其余文件看起来不错。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM