Допустим, у меня есть таблица категорий, а затем у меня есть таблица продуктов.
Каждый продукт принадлежит к некоторой категории.
Теперь я хочу удалить категорию, назначенную некоторым продуктам.
Это вызовет ошибку, потому что я не могу удалить что-то из базы данных из-за связей с базой данных. Мой код ниже удаляет строку из таблицы (используя jquery), но она удаляет категорию для реального, только если она не использует ее.
Я пытаюсь создать предупреждение об ошибке, когда я нажимаю на значок " Delete
и эта категория не может быть удалена. Как я могу это сделать? Я предпочел бы какое-то всплывающее окно jQuery с предупреждением, но я действительно не знаю, как я должен проверить ошибку в первую очередь.
EDIT: я пытался использовать 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;
}
$ver = mysqli_query($conn, $query);
if(!$ver)
{
echo "Error MySQLI QUERY: ".mysqli_error($conn)."");
die();
}
else
{
echo "Query succesfully executed!";
}
попробуй это