简介:我正在使用ajax创建服务器端数据表库。
错误::我的print_r($ stmt)似乎正在返回Object。我认为这是第一个错误,导致其他错误,例如“未捕获的错误:对成员函数fetch_assoc()的调用为null”。
此外,我认为print_r($ result)没有显示任何详细信息。
Ajax代码:
<script type="text/javascript">
$(document).on('click','.edit_btn',function (){
var id = $(this).attr("id").match(/\d+/)[0];
var edit_id = $('#example').DataTable().row( id ).data();
var edit_id = edit_id[0];
$.ajax({
type:'POST',
url: 'form.php',
datatype: "json",
data: { edit_id : edit_id },
success: function(result) {
//alert(edit_id);
alert(result);
$("#edit_id").val(edit_id);
} //success func
}); //ajax
}); //end ready
</script>
Form.php:
$conn=mysqli_connect($host,$user,$pass,$db);
$stmt = $conn->prepare("SELECT * FROM `employees` WHERE `id` = ?");
$stmt->bind_param("i", $_POST['edit_id']);
$stmt->execute();
print_r($stmt);
$result = mysqli_query($conn, $stmt);
print_r($result);
$row = $result->fetch_assoc();
echo $row;
答案 0 :(得分:0)
最简单的说,您不能在Ajax中使用print_r,因为它与结尾处的echo语句冲突。相反,在检查变量时必须使用var_dump。
答案 1 :(得分:-1)
在要使用print_r打印的php文件上,与DT一起使用时会出现错误。首先注释一下print_r行,然后在第二个注释中看不到将查询的返回数据插入到数组中的while循环,在此之后,您必须对最终的echo进行编码。
由于我不知道您餐桌上的员工的信息,因此举一个例子: 您的查询应类似于:
UIFont.FromName([YourFontFullName], 20f);