Php 我有3个if语句,其中包含3个通过外键相互关联的查询系统显示错误消息如何修复?

Php 我有3个if语句,其中包含3个通过外键相互关联的查询系统显示错误消息如何修复?,php,mysql,if-statement,Php,Mysql,If Statement,我有三个if语句,查询3个表,每个表都有一个来自前一个表的外键,但问题是系统没有获取另一个表(id)的外键,而是将值设为0 此代码背后的想法是用户输入政府名称并单击“添加”,然后系统插入政府名称……如果用户输入地区名称而未输入政府名称,则系统显示错误消息,否则系统将同时插入这两个值(但是在省id字段中的dist表中,系统输入0不是省id的正确id),因此当我尝试在第三个字段中输入$dist时,系统显示未定义变量:dist in 那么如何修复这个错误呢 代码: 如果每个pk都定义为自动递增,请使用

我有三个if语句,查询3个表,每个表都有一个来自前一个表的外键,但问题是系统没有获取另一个表(id)的外键,而是将值设为0

此代码背后的想法是用户输入政府名称并单击“添加”,然后系统插入政府名称……如果用户输入地区名称而未输入政府名称,则系统显示错误消息,否则系统将同时插入这两个值(但是在省id字段中的dist表中,系统输入0不是省id的正确id),因此当我尝试在第三个字段中输入$dist时,系统显示未定义变量:dist in

那么如何修复这个错误呢

代码:
如果每个pk都定义为自动递增,请使用
mysqli\u insert\u id
并且不要使用mysql函数,那么这些pk都是不推荐的。

请重新表述您的问题@Ofir Baruch您的意思??我甚至无法理解这段代码背后的逻辑。您能解释一下您预期会发生什么。这是您所问问题的重复,是吗试图让其他人为你编写代码吗?@Nicholas King不,先生,这不是一个简单的问题,这是一个不同的问题,因为这是我面临的一个不同的问题,我会按照你的建议解释我预期会发生什么
   if(isset($_POST['add']))
   {
       if(isset($_POST['gov']) || isset( $_POST['dist']) || isset($_POST['city']) || isset( $_POST['lat']) || isset($_POST['long']) == "" )
       {
         $errorMSG = "you must fill one of these fields befor you submit!!";
       }

       if($_POST['gov'])
       {
           $gov = $_POST['gov'];
           $sql = mysql_query("INSERT INTO governorate (governorate_id, governorate_name)VALUES('', '$gov')")or die(mysql_error());
           echo $gov;
       }
       //******for adding district*********************//
       if($_POST['dist'])
       {
           $dist = $_POST['dist'];
           $gov = $_POST['gov']; 
           if($_POST['gov'] !=="")
           {
           $sql = mysql_query("INSERT INTO districts (district_id, district_name, governorate_id)VALUES('', '$dist', '$gov')")or die(mysql_error());
           echo $dist;
           }
           else{ $errorMSG = "You can not add District Without relate a Governorate for this district";}
       }
       //********************for adding city****************************//
       if($_POST['city'])
       {
           $city = $_POST['city'];
           $lat = $_POST['lat'];
           $long = $_POST['long'];

           if(!$dist)
           {
               $errorMSG = "you can not add city without having relation with district";
           }
           if($lat =="" || $long ==""){ $errorMSG = "You can not add village Without its coordination";}
           else
           {
           $sql = mysql_query("INSERT INTO village (id, village_name, district_id, lattitude, longitude)VALUES('', '$city', '$dist' ,'$lat',  '$long')")or die(mysql_error());
           echo $city;
           }
       }
   }