i have problem here about inserting data using ajax with JQGrid, when i try pass the data its say succses but not stored in database , i think i have problem with ajax or add function in php
here my ajax
function AddPost(params) {
$.ajax({
url: '<?php echo base_url() ?>index.php/Welcome/tambah_data',
data: {
nama: params.nama,
deskripsi: params.deskripsi,
user_id: params.user_id,
created_time: params.created_time,
},
async: 'true',
cache: 'false',
type: 'post',
success: function (data) {
alert("Data successfully added");
},
error:function(data){
alert("error happend");
}
});
console.log(params);
}
and here my controller
function tambah_data(){
$id=$_POST['id'];
$name=$_POST['name'];
$deskripsi=$_POST['deskripsi'];
$user_id=$_POST['user_id'];
$created_time=$_POST['created_time'];
$sql = "INSERT INTO `master_matakuliah`( `id`, `name`, `deskripsi`, `user_id`,`created_time`)
VALUES ('$id','$name','$deskripsi','$user_id','$created_time')";
if (mysqli_query($conn, $sql)) {
echo json_encode(array("statusCode"=>200));
}
else {
echo json_encode(array("statusCode"=>201));
}
mysqli_close($conn);
}
can some help me with this ? , sorry for my bad english,thanks
你没有$_POST['id']在你的 ajax 调用中传递这个,在你从 ajax 传递到 php 的 ajax 调用中也有错字nama,但是使用$_POST['name']这个将是null。
感谢@Swati 的回复,我已经在 ajax 上添加了 id,并将名称更改为 nama,但是仍然不起作用,我在 ajax 或 php 中错了吗?
我认为问题出在 php 中,尝试打印mysqli_error如果您的查询中有任何错误,这将显示错误。
检查问题的最简单方法是在echo json_encode中返回 $sql 变量。在此之后尝试在控制台中手动执行此命令,您将看到问题