使用ajax和php编辑.php表单
简介 我正在做一个服务器端数据表库 下面的代码既没有打印$stmt也没有打印$row,因此我看不出有什么问题。这很糟糕,因为我想解决这个问题而不发布使用ajax和php编辑.php表单,php,jquery,ajax,Php,Jquery,Ajax,简介 我正在做一个服务器端数据表库 下面的代码既没有打印$stmt也没有打印$row,因此我看不出有什么问题。这很糟糕,因为我想解决这个问题而不发布 <?php if (isset($_POST["edit_id"])) { $stmt = $conn->prepare("SELECT * FROM `employees` WHERE `id` = ?"); print_r($stmt); $stmt->bind_para
<?php
if (isset($_POST["edit_id"])) {
$stmt = $conn->prepare("SELECT * FROM `employees` WHERE `id` = ?");
print_r($stmt);
$stmt->bind_param("i",$id);
$id = $_POST['edit_id'];
$stmt->execute();
$result = mysqli_query($stmt);
$row=mysqli_fetch_assoc($result);
//$result = $stmt->get_result();
//$row = mysqli_fetch_array($stmt);
print_r($row);
}
?>
我的编辑按钮(您可以清楚地看到,我将其命名为编辑按钮):
columnDefs: [
{ targets: -1,
render: function (data, type, row, meta) {
return '<button type="submit" class="edit_btn btn btn-success btn-md active" data-id=s-"' + meta.row + '" id=s-"' + meta.row + '" value="edit" name="edit_btn" data-toggle="modal" data-target="#editForm"> <span class="glyphicon glyphicon-pencil"></span> </a>';
}
}
]
columnDefs:[
{目标:-1,
呈现:函数(数据、类型、行、元){
返回“”;
}
}
]
最后,我将在编辑表单中回显这些值,如下所示:
<input type="text" value="<?php echo $row['first_name'] ?>" class="" id="edit2" name="first_name" required>
PHP代码的第一部分是检查数据中是否设置了edit\u btn
if (isset($_POST["edit_btn"])) {
您传递的数据设置为
data: { edit_id : edit_id },
由于您没有设置此项,它将始终失败,您可以轻松更改此项以检查ID是否已设置
if (isset($_POST["edit_id"])) {
编辑:
还要感谢菲尔
ajax调用需要
$.ajax({
url: 'index.php',
dataType: "json",
method: 'POST',
data: { edit_id : edit_id },
success: function(result) {
//alert(result);
$("#edit_id").val(result);
} //success func
}); //ajax
还注意到您的success
方法正在传递result
,并且您正在方法内部的代码中使用eidt\u id
为什么tge$stmt有“id=?”?这里不应该有一个变量,特别是$i吗?@GuyLouzon-OP正在使用prepared语句。prepared语句用于sqli注入。我将$id绑定到它,这是来自ajax调用的edit_id。尽管如此,在$stmt和之前的代码中都没有提到$i和i。。。也许是me@GuyLouzon因此,您不必一直在这里提问,请仔细阅读此~好的。我做了这三件事(并且同意)。将在我的新代码中编辑。我不认为它完全解决了问题,但仍然没有打印。更新了成功
方法。输入$(“#编辑id”).val(结果)
使我的整个网页如下所示:DataTables服务器端有那么糟糕吗?输入$(“#edit_id”).val(edit_id)
会获取编辑id。由于某些原因,单击后仍无法打印。但你们把我引向了正确的方向。
$.ajax({
url: 'index.php',
dataType: "json",
method: 'POST',
data: { edit_id : edit_id },
success: function(result) {
//alert(result);
$("#edit_id").val(result);
} //success func
}); //ajax