嘿,我是PHP新手,需要从MYSQL TABLE中删除一条记录,我的用户名位于html表中!我将mysql表数据提取到html表的代码是:
while($data=mysqli_fetch_array($result)){
$count+=1;
echo "<tr>";
echo "<td>";
echo "<p>";
echo $count;
echo "</p>";
echo "</td>";
echo "<td>";
echo "<p>";
echo $data['myusername'];
echo "</p>";
echo "</td>";
echo "<td>";
echo "<p>";
echo $data['logincount'];
echo "</p>";
echo "</td>";
echo "<td>";
echo "<p>";
echo $data['signindate'];
echo "</p>";
echo "</td>";
echo "<td>";
echo "<p>";
echo $data['signupdate'];
echo "</p>";
echo "</td>";
echo "<td>";
echo "<p>";
echo "<a href='deluser.php?id=" . $data['myusername'] . "'>Del</a>"; //here i want to use this link to delete a user
echo "</p>";
echo "</td>";
echo "</tr>";
}
我的deluser.php是:
<?php
//$user=$_GET['myusername'];
$isConnected=mysqli_connect('localhost','root','','mydb');
if($isConnected){
if (isset($_GET["myusername"])) {
$query = "DELETE FROM users WHERE myusername = " . $_GET["myusername"];
$result = mysqli_query($con, $query);
// Check the result and post confirm message
if(!$result){
echo 'error'.mysqli_error($isConnected);
}
else{
echo 'success';
}
}
}
?>
假设已经设置了连接,然后我想使用通配符删除一条记录,即myusername='valueforhtmltable'!
问题是,没有任何东西向我展示,也没有任何错误,也没有成功,所以是我做错了什么吗?有人能帮帮我吗!
看起来您设置的查询不正确。应为:
$query = "DELETE FROM users WHERE myusername = '" . $_GET["myusername"] . "'";
$result = mysqli_query($con, $query);
mysqli_query()
函数的第一个参数必须是连接链接,为什么要使用$con
变量?您到$isConnected
变量中数据库的连接链接。尝试使用这个:
$result = mysqli_query($isConnected, $query);
如果你的myusername
值是字符串,你需要把这个值用单引号括起来:
$query = "DELETE FROM users WHERE myusername = '" . $_GET["myusername"] . "'";
对于数据库中的更新信息,您需要使用POST
方法,GET
方法对所需信息很好,但对更新不好,不安全。