删除语句php-MySQL

删除语句php-MySQL,php,mysql,sql-delete,Php,Mysql,Sql Delete,我需要一些代码方面的帮助,当我单击提交代码时,它总是显示“用户成功踢出”。但是,查询未成功执行,用户仍在数据库中 编辑:修复了mysql/msqli问题。查询现在回答“出错”,而不是“用户成功踢出”。但是我不会从mysql_错误报告中得到任何错误。我能做什么 include 'connect.php'; if(empty($_POST['user_id'])) { echo '<form method="post" action="">

我需要一些代码方面的帮助,当我单击提交代码时,它总是显示“用户成功踢出”。但是,查询未成功执行,用户仍在数据库中

编辑:修复了mysql/msqli问题。查询现在回答“出错”,而不是“用户成功踢出”。但是我不会从mysql_错误报告中得到任何错误。我能做什么

include 'connect.php';

if(empty($_POST['user_id'])) 
    {
            echo '<form method="post" action="">
                  User_id: <input type="text" name="user_id" />
                 <input type="submit" value="Kick user" />
                 </form>';

    }
    else 
    {
        $sql = "DELETE FROM users
                WHERE 
                user_id = '" .mysqli_real_escape_string($_POST['user_id']) . "'
                ";

        $result = mysqli_query($con, $sql);
        if($result)
        {
            //something went wrong, display the error
            echo 'Something went wrong!.';
            echo mysqli_error(); //debugging purposes, uncomment when needed
        }
        else
        {
            echo 'User successfully kicked!';
        }
    }
包括“connect.php”;
if(空($\u POST['user\u id']))
{
回声'
用户id:
';
}
其他的
{
$sql=“从用户中删除”
哪里
user_id='”。mysqli_real_escape_字符串($\u POST['user_id'])。“'
";
$result=mysqli\u查询($con,$sql);
如果($结果)
{
//出现问题,请显示错误
echo“出了问题!”;
echo mysqli_error();//调试目的,需要时取消注释
}
其他的
{
echo“用户成功踢出!”;
}
}
我的connect.php如下所示:

<?php
$con=mysqli_connect ("localhost","root","","dps");
if (mysqli_connect_errno()) {
echo "failed to connect mysql: ". mysqli_connect_error();
}
?>

添加:

$result = mysqli_query($con, $sql);
之后:

$sql = "DELETE FROM 
                    users
                WHERE 
                    user_id = '" . mysql_real_escape_string($_POST['user_id']) . "'
                ";

您正在
if
部分中设置
$sql
变量,并尝试在
else
部分中访问它。这是行不通的。 此外,您还混合了不好的库(mysql与mysqli不同,请使用mysqli,因为mysql已被弃用,将从php中删除

包括“connect.php”;
if(空($\u POST['user\u id']))
{
回声'
用户id:
';
}
其他的
{
$sql=“从用户中删除”
哪里
用户id=“.mysqli\u real\u escape\u字符串($con,$\u POST['user\u id'])。”“
";
$result=mysqli\u查询($con,$sql);
如果(!$result)
{
//出现问题,请显示错误
echo“出了问题!:”;
echo mysqli_error($con)//调试目的,需要时取消注释
}
其他的
{
echo“用户成功踢出!”;
mysqli_免费_结果($result);
}
}
您可能需要修改connect.php以使用mysqli


编辑:这里有一些错误,现在应该修复这些错误。

如果。。。else…语句。您正在混合API。如果/else错误,请在打开
您的条件语句后立即将错误报告添加到文件顶部。在顶部添加错误报告时,我不会得到错误。此外,我的数据库似乎在我制作的其他页面上正常工作。谢谢你迄今为止的帮助!不是DV,但如果使用mysqli,参数绑定可能会更好。您的转义函数也不正确-不要将
mysql
mysqli
函数混合使用。@实际上,需要添加一个
i
并传递数据库连接。另一个提示@Maikel:记住“它不工作”这个短语本身并不会给人们带来任何新的反应。试着更详细地了解这个问题。仔细阅读,然后相应地修改你的答案;-)
include 'connect.php';

if(empty($_POST['user_id'])) 
{
        echo '<form method="post" action="">
              User_id: <input type="text" name="user_id" />
             <input type="submit" value="Kick user" />
             </form>';

}
else 
{
    $sql = "DELETE FROM users
            WHERE 
            user_id = '" .mysqli_real_escape_string($con, $_POST['user_id']) . "'
            ";

    $result = mysqli_query($con, $sql);
    if(!$result)
    {
        //something went wrong, display the error
        echo 'Something went wrong!: ';
        echo mysqli_error($con) //debugging purposes, uncomment when needed
    }
    else
    {
        echo 'User succesfully kicked!';
        mysqli_free_result($result);
    }
}