检查查询是否成功

时间:2018-03-03 02:13:42

标签: php jquery mysql sql-delete delete-row

假设我有一个类别表,然后我有产品表

每个产品属于某个类别。

现在,我想删除分配给某些产品的类别。

这会导致错误,因为由于数据库关系,我无法从数据库中删除某些内容。我的代码从表中删除了一行(使用jquery),但只有在没有产品使用它的情况下才会删除真实的类别。

我在点击Delete图标时尝试创建一些错误警告,但无法删除该类别。我怎样才能做到这一点?我更喜欢一些带有警告的jQuery弹出窗口,但我不知道如何首先检查错误。

修改 我曾尝试将echo 1;echo 0;用作response作为ajax但我每次要删除某些内容时都会收到警告消息,即使没有错误也是如此。

<tbody>
   <?php
   $cat_list = "SELECT * FROM games_category";
   $result = mysqli_query($conn, $cat_list);
   while($row = mysqli_fetch_assoc($result)) {
       $id = $row['id'];
       $name = $row['name'];
       ?>
       <tr>
           <td><?php echo $id; ?></td>
           <td><?php echo $name; ?></td>
           <td>
               <span class='delete_game_cat' id='del_<?php echo $id; ?>'><img src="../images/remove.png" alt="" title="Delete" class="icon"/></span>
           </td>
       </tr>
       <?php
   }
   ?>
</tbody>

这是脚本:

$(document).ready(function(){
   // Delete
   $('.delete_game_cat').click(function(){
       var el = this;
       var id = this.id;
       var splitid = id.split("_");

       // Delete id
       var deleteid = splitid[1];

       // AJAX Request
       $.ajax({
           url: 'delete_game_cat.php',
           type: 'POST',
           data: { id:deleteid },
           success: function(response){
                if(response===1){
                   // Removing row from HTML Table
                   $(el).closest('tr').css('background','tomato');
                   $(el).closest('tr').fadeOut(600, function(){
                       $(this).remove();
                   });
                }else{
                    alert("This category cannot be deleted!");
                }
           }
       });
   });
});

和sql查询:

$id = $_POST['id'];
$query = "DELETE FROM games_category WHERE id =".$id;

if(mysqli_query($conn, $query)){
    echo 1;
}else{
    echo 0;
}

1 个答案:

答案 0 :(得分:-1)

$ver = mysqli_query($conn, $query);
if(!$ver)
{
    echo "Error MySQLI QUERY: ".mysqli_error($conn)."");
    die();
}
else
{
    echo "Query succesfully executed!";
} 

试试这个