Php 删除与用户id对应的所有行
我有一个带列的表:Php 删除与用户id对应的所有行,php,mysql,database,Php,Mysql,Database,我有一个带列的表: 标签|标签|用户| id 1 |安卓| 7 2 |窗口| 7 3 |窗口| 2 4|mac|7 5 |窗口| 1 6 |窗户| 3 像这样,我想做的是删除所有user_id=7的行。 这里的“tags\u id”是自动递增的,标记从用户返回,用户id也从用户配置文件返回。 但是我没有从下面的代码中得到任何更改 以下是我的PHP代码: <?php if($_SERVER['REQUEST_METHOD']=='POST'){ //Getting values
标签|标签|用户| id
1 |安卓| 7
2 |窗口| 7
3 |窗口| 2
4|mac|7
5 |窗口| 1
6 |窗户| 3 像这样,我想做的是删除所有user_id=7的行。 这里的“tags\u id”是自动递增的,标记从用户返回,用户id也从用户配置文件返回。 但是我没有从下面的代码中得到任何更改 以下是我的PHP代码:
<?php
if($_SERVER['REQUEST_METHOD']=='POST'){
//Getting values
$user_id = $_POST['user_id'];
//Creating an sql query
$sql = "DELETE FROM user_tags WHERE user_id = '$user_id'";
//Importing our db connection script
require_once('dbConnect.php');
//Executing query to database
if(mysqli_query($con,$sql)){
echo 'Tags updated';
}else{
echo 'Tags could not be update';
}
//Closing the database
mysqli_close($con);
}
因为用户字段的名称不正确。您使用的是用户id而不是用户id。请参见以下内容:
之前:
$sql = "DELETE FROM user_tags WHERE users_id = '$user_id'";
之后:
$sql = "DELETE FROM user_tags WHERE user_id = '$user_id'";
还有一个提示:使用prepared语句。请参阅此处的链接:使用始终准备好的语句来防止注射
<?php
require_once('dbConnect.php');
$delete_user_tags = $con->prepare(" DELETE from user_tags WHERE user_id = ? ");
$delete_user_tags->bind_param("i", $user_id);
if (isset($_POST['user_id'];)) {
$user_id = $_POST['user_id'];
if (!$delete_user_tags->execute()) {
echo ('Tags could not be update');
} else {
echo ('Tags updated!');
}
}
看看这个。更改后仍然无法工作也非常感谢您的代码,现在所有与user_id对应的标记都被删除了,所以我必须做什么才能将新的标记集插入到同一个user_id。。。我使用了以下代码:$sql=“INSERT INTO user_tags(tags,user_id)值(“$tags”,“$user_id”)”。请接受答案。与必须使用prepared statemnt的代码相同。我不知道你的密码。。我认为这是一系列标签。