试图用php文件从数据库中删除表

Trying to delete a table from a database with a php file

本文关键字:数据库 删除 文件 php      更新时间:2023-09-26

我在数据库mshop2中有一个名为userdb的表。它有:

  • ID
  • <
  • 名称/gh>
  • 用户名

我的js文件与所有的函数存储在他们被命名为mshop2。脚本,其中也存储了deleteUser函数,它将跳转到一个名为deleteUser.php

的文件

我想让代码运行的php文件是admin.php,里面写着:

<font color="white">Deletion - ID</font>
<input class="test1" type="text" id="txUserid" value="">
<input class="test2" name="Submit" type="submit" value="" id="submit" 
       onClick='deleteUser();txUserid.value="";'/>

'输入类'的词只是要匹配一个图像文件夹根据我的css文件,以显示一个图像,我想要的代码运行时,我点击它,所以不要介意它。我在.php文件的头部包含了这些行:

<script src='jquery.js'></script>
<script src='mshop2.script.js'></script>

我已经在我的mshop2.script.js文件中写了这个:

function deleteUser(){
    var userid = $('#txUserid').val();
    var finalData = {
        uid: userid
    };
    $.post('deleteUser.php', finalData, function(resp){
        if(resp == 'success'){
            alert('User successfully deleted.');
            getUserList();
        }
    }); 
}

这是deleteUser.php文件的内容:

<?php
    include 'config.php';
    $id = mysql_real_escape_string($_POST["userid"]);
    $q = "DELETE FROM userdb WHERE ID = '$uid'";
    if(!mysql_query($q, $con)){
        die('Error: ' . mysql_error());
        echo mysql_error();
    }else{
        echo 'success';
    }
    mysql_close($con);
?>

什么都没有发生,如果我在文本框中输入'1'或从1到5的任何数字,我输入的数据库中具有相同ID的表中的匹配行不会被删除。

我的代码有什么问题?

修改:-

$q = "DELETE FROM userdb WHERE ID = '$uid'";

$q = "DELETE FROM userdb WHERE ID = '$id'";

你正在捕捉变量$id的值,并在sql语句中使用$uid,这就是它不工作的原因。

in jq in are Posting uid

将post改为

$uid = mysql_real_escape_string($_POST["uid"]);

您有一个混乱的变量,使u感到困惑。

在您的脚本代码中,您传递了值为useriduiddeleteUser.php

中访问了一个错误的变量

代替mysql_real_escape_string($_POST['userid']);

更改为mysql_real_escape_string($_POST['uid']);

在您的查询中,只需将变量$uid更改为$id

只需使用一个与您在脚本中传递的变量相似的变量,这样您就不会很难看到常见错误

编辑:::试试这个删除html代码中的onclick事件

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
 <script>
     $(document).ready(function() { 
          $(".test2").click(function() { 
                 var id = $("#tsUserid").val();
                 $.post("deletUser.php", { id: id }, function(data) { 
                     alert(data);
                 });
          });
     });
 </script>

你的php将是你的deleteUser.php和

change mysql_real_escape_string($_POST['userid']);

to mysql_real_escape_string($_POST['id']);

和您的查询to$q = "DELETE FROM userdb WHERE ID = '$id'";

希望能有所帮助。