Deleteを押したときにAJAX/jQueryを使用してMYSQLデータベースの行を削除しようとしています。私はZend Framework 1.12を使用しています。AJAX/jQuery(Zend Framework 1.12)を使用してmysqlの行を削除する
アラートの部分(del_id)までは、私のコードは です。私が「削除」ボタンを押すと、一致するIDを持つウィンドウが表示されます。
しかし、ページ内と私のデータベース内の行を削除する部分が機能していません。誰かが私に問題を示すことができますか?
また、私は$ .ajax()とZendを使っていくつかの疑問を抱いていました。削除アクションのビュースクリプトへのパスをurlに入れていますか?このようにすると、コントローラのdeleteAction()関数が呼び出されます。
これは、Javaスクリプトを使用してレイアウトです:
<!-- application/views/scripts/users-data/adminpage.phtml -->
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script>
$(document).ready(
function(){
$(".delete_class").click(
function(){
var del_id = $(this).attr('id');
var rowElement = $(this).parent().parent();
alert(del_id);
$.ajax({type:'POST',
url:'/users-data/delete.phtml',
data: {'delete_id':del_id},
success:function(data) {
if(data=="YES") {
rowElement.fadeOut().remove();
alert("success");
}else { alert("erro");
}}
});
});
});
</script>
</head>
<body>
<center>
<?php
echo "Users List";
?>
<table border="1">
<tr>
<th>Name</th>
<th>Email</th>
</tr>
<?php foreach($this->entries as $entry) : ?>
<tr>
<td><?php echo $entry->name;?></td>
<td><?php echo $entry->email;?></td>
<td><?php echo $entry->id;?></td>
<td> <button id="<?php echo $entry->id; ?>" class="delete_class"> Delete</button></td>
</tr>
<?php endforeach; ?>
</table>
そして、これは、コントローラのコードです:私がテストし、働いていた
は、deleteuser()関数。
public function deleteAction()
{
//$id = $_POST['delete_id'];
$request = $this->getRequest();
$id= $request->getPost('delete_id');
$mapper = new Application_Model_UsersDataMapper();
$mapper->deleteUser($id);
}