我有一个表从mysql db生成一个用户帐户列表。我想要一个可以从此列表中删除用户的按钮。
这是我的表格:
<td><form action="empdelete.php">
<?php echo "<input type='text' name='employee' value='".$employee['username']."'/><button type='submit' class='btn btn-default'>Delete</button>"?>
</form></td>;
这是我的empdelete.php:
<?php
if($_POST['submit'])
{
mysql_connect("host","username","pword") or die(mysql_error());
mysql_select_db("db") or die(mysql_error());
$username = $_POST['username'];
$result=mysql_query("DELETE FROM employee WHERE username='$username'") or die(mysql_error());
//confirm
echo "Employee Deleted";
}
?>
表名是employee,列名是username。它似乎没有工作......任何建议?
答案 0 :(得分:0)
您可以使用普通链接并将用户名作为GET参数传递
<?php
echo '<a href="empdelete.php?username='.$employee['username'].'">Delete</a>';
?>
然后在您的PHP中,您可以获取值并进行删除
<?php
if($_GET['username']) {
mysql_connect("host","username","pword") or die(mysql_error());
mysql_select_db("db") or die(mysql_error());
$username = $_GET['username'];
$result=mysql_query("DELETE FROM employee WHERE username='$username'") or die(mysql_error());
echo "Employee Deleted";
}
?>
**但要小心 - 你的方法让你接受SQL注入攻击,你应该阅读这些**
答案 1 :(得分:0)
在您<input>
name="employee"
中,您需要$username = $_POST['employee'];
此外,您的程序容易受到SQL注入攻击。 当你这样做时:
$username = $_POST['username'];
$result=mysql_query("DELETE FROM employee WHERE username='$username'")
您需要清理$username
变量。从这个问题开始,了解SQLi: