小编bot*_*fix的帖子

在插入MySQL之前如何检查表中是否存在名称

我要添加一个新区域,我想检查用户插入的名称是否已经存在于Areas表中。                               

我尝试使用select检查数据,但是当我将包含插入内容的if语句嵌套在while循环中时,没有任何反应,也没有错误,也没有输出。

$campus_area_name = mysqli_real_escape_string($conn, $_POST["campus_area_fk"]);
$area_name = mysqli_real_escape_string($conn, $_POST["area_name"]);

$query_names = "SELECT name FROM areas WHERE idCampus = '".$campus_area_name."'";
$name_result = mysqli_query($conn, $query_names);
while ($row = mysqli_fetch_array($name_result)) {
    if($row["name"] == $area_name){
        echo "Area Name Already Exists";
    } else {
        $query = "INSERT INTO areas(name, idCampus) VALUES ('".$area_name."', '".$campus_area_name."')";
        if (mysqli_query($conn, $query)){
            $last_id = $conn->insert_id;
            $query_retrieve = "SELECT idareas, name FROM areas WHERE idareas = '".$last_id."'";
            $my_result = mysqli_query($conn, $query_retrieve);

            while ($rows = mysqli_fetch_array($my_result)) {
               $output["area_name_retrieve"] = $rows["name"];
               $output["area_id_retrieve"] = …
Run Code Online (Sandbox Code Playgroud)

php mysql sql mysqli

-4
推荐指数
1
解决办法
189
查看次数

标签 统计

mysql ×1

mysqli ×1

php ×1

sql ×1