我对PHP非常新。请原谅所有错误。我正在尝试使用下面列出的PHP代码创建AJAX的提交验证,以验证数据库中是否存在变量$_POST['genre']
。如果没有,插入,如果确实存在,则删除。然而,它似乎只是插入而不是删除。任何帮助都会很棒!
谢谢,
<?php
include('../includes/includes_db_connect.php');
$tbl_name = "genres";
$genre = $_POST['genre'];
$query = mysqli_query($con, "SELECT types FROM genres WHERE types = '".$genre."'");
$row = mysqli_num_rows($query);
if ($row > 0){
echo "delete";
mysqli_query($con, "DELETE FROM ".$tbl_name." WHERE types = '".$genre."'");
} else
echo "inserted";
mysqli_query($con, "INSERT INTO ".$tbl_name." (types) VALUES ('".$genre."')");
mysqli_close($con);
?>
答案 0 :(得分:1)
你在else语句中缺少大括号。
使用if else的正确方法是
if {PUT ALL STATEMENT WHICH SHOULD BE EXECUTED IF CONDITION IS STATISFIED}
else {PUT ALL STATEMENT WHICH SHOULD BE EXECUTED IF CONDITION IS NOT STATISFIED}
如果你不使用{},只会执行一个语句,在你的情况下回显“插入”,插入查询在else语句之外,因此它会一直执行。
因此,即使它正在删除,同时它再次插入,因此行为。