我有几个表格列出了不同的内容:问题、回复和用户。这些表来自管理员的 pov。在左侧,代码创建了一个包含一个小的 cancel.png img 的单元格,该单元格应该是该行的删除按钮。现在,当我单击任何按钮(有很多)时,它什么也没做,但是当我将鼠标悬停在它们上时会触发悬停光标动画。我不知道出了什么问题,我让我的另一位同事检查了 JS,但他在另一家工厂工作。
我试过编辑 JS,检查 PHP 中的 SQL 查询,检查数据库是否触发了任何东西,但它没有。网上也没有什么好的例子可以记录下来。
所以这里是代码开始的地方:这是删除函数。
<?php
if(isset($_GET['udel'])) {
$error = 0;
$uid = mysqli_real_escape_string($link, $_GET['udel']);
$query = "DELETE FROM users WHERE id = $uid;";
if (!mysqli_query($link, $query)) $error = 1;
if ($error == 0) $msg = 'The user has been deleted.';
else $msg = 'The user couldn\'t be deleted. Contact the website administrator if the problems persists.';
}
?>
有 php/html 调用另一个 php 文件来打印(例如用户)表:
<?php
printUsersTable(getUsers($link));
?>
它把这个东西叫做:
<?php // theres code above here
function printUsersTable($users) {
?>
<table class="neutral" border="0" style="width:500px;">
<thead>
<tr>
<th>DEL</th>
<th>Name</th>
<th>Email</th>
<th>Admin</th>
<th>State</th>
</tr>
</thead>
<tbody>
<?php foreach($users as $user) { ?>
<tr>
<td style="cursor: pointer";><img src="images/cancel.png" class="userDel" rel="<?=$user['id']?>" /></td>
<td><?=$user['name']?></td>
<td><?=$user['login']?></td>
<td><?php if($user['admin'] == 1) echo 'Y'; else echo 'N'; ?></td>
<td><?=$user['state']?></td>
</tr>
<?php } ?>
</tbody>
</table>
<?php
}
// code continues
?>
全部打印(因此包含在内)到第一个管理页面上。
然后它转到这个(在第一个管理页面上,就像代码的第一部分一样),如果点击,应该触发 rel 属性:
$(".userDel").click(function() {
var uid = $(this).attr("rel");
if(confirm("Are you sure you want to delete user " + uid + "?")) {
window.location = 'admin.php?udel=' + uid;
}
});
我也试过这个,但它也不起作用:
$(".userDel").on('click', function(event) {
event.stopPropogation();
event.stopImmediatePropogation();
var uid = $(this).attr("rel");
if(confirm("Are you sure you want to delete user " + uid + "?")) {
window.location = 'admin.php?udel=' + uid;
}
});
在我的所有文件中,首先是 php 代码,然后是 JS,然后是任何 HTML。我很忙,你们能帮帮我吗?(另外,我在任何地方都没有任何 SQL 注入漏洞吗?)>.>