
我是php的初学者,我目前正在使用管理面板(你可以看到我的管理面板页面).问题是我想通过这两个按钮传递序列号以进一步执行.但我找不到如何发送$value编辑和删除特定行.
<div id="headin2"><strong> <h3>Admin page </h3></strong></div>
<?php
echo "<table width=\"100%\" border=\"0\" id=\"tab\">";
echo "<tr>";
echo "<th id=\"td1\">Serial No</th><th id=\"td2\">Account Title</th>
<th id=\"td3\">Email</th><th id=\"td4\">Gender</th><th id=\"td5\">city</th>
<th id=\"td6\">Course</th><th id=\"td7\">status</th><th id=\"td8\" colspan=\"3\">Action</th>";
echo "</tr>";
while ( $row = mysql_fetch_array($query))
{
$SN = $row['SN'];
$actitle = $row['ac_title'];
$email = $row['email'];
$gender = $row['sex'];
$cite = $row['city'];
$course = $row['CRS'];
$status = $row['status'];
echo "<tr>";
echo "<td>".$SN."</td><td>".$actitle."</td><td>".$email."</td>
<td>".$gender."</td><td>".$cite."</td><td>".$course."</td><td>".$status."</td>
<td>"."<input type=\"button\" name=\"edit\" value=\"Edit\"/>
<input type=\"button\" value=\"Delete\" name=\"delete\" >"."</td>";
echo "</tr>";
}
?>
</table>
Run Code Online (Sandbox Code Playgroud)
你可以用两种方法之一做.
对于每一个<tr>,每个地方都有一个删除按钮,
<a href="#" data-id="<?php echo $value; ?>" class="delete-row">Delete</a>
Run Code Online (Sandbox Code Playgroud)
底部的脚本:
//Include jQuery here
<script language="javascript">
$('.delete-row').click(function (event) {
event.preventDefault();
var id = $(this).data('id');
$.ajax({
url: "url/to/delete",
method: "POST",
cache: false,
data: { id: id },
success: function (html) {
$(this).parent().parent().remove();
});
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
这会将行的ID放入<a href>自身,data并使用jQuery发送一个AJAX调用来删除记录.如果删除成功,则会从表中删除该行.
每个<tr>地方都有一个删除按钮,
<form method="POST" action="url/to/delete">
<input type="hidden" name="id" value="<?php echo $value; ?>" />
<input type="submit" value="Delete" />
</form>
Run Code Online (Sandbox Code Playgroud)
这是老式的方法,隐藏字段是后端知道要删除哪一行的方式.
在后端,您仍然可以使用$_POST['id'];获取要删除的记录的ID.在上面的示例中,$value是每行的ID,并且很可能类似于$row['id']它来自a foreach().
您需要action(编辑/删除)和行id.不幸的是,没有一些JS按钮只会发布一个值.
您可以为每一行创建一个新表单,添加一个隐藏元素.例如:
<?php while ($row = mysql_fetch_array($query)) : ?>
<tr>
<!-- other cells -->
<td>
<form method="post" action="">
<input type="submit" name="action" value="Edit"/>
<input type="submit" name="action" value="Update"/>
<input type="hidden" name="id" value="<?php echo $row['id']; ?>"/>
</form>
</td>
</tr>
<?php endwhile; ?>
Run Code Online (Sandbox Code Playgroud)
然后发布后你可以检查action和id
if ($_POST['action'] && $_POST['id']) {
if ($_POST['action'] == 'Edit') {
// edit the post with $_POST['id']
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
57478 次 |
| 最近记录: |