Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php MySql从3个表中选择未定义索引错误_Php_Mysql - Fatal编程技术网

Php MySql从3个表中选择未定义索引错误

Php MySql从3个表中选择未定义索引错误,php,mysql,Php,Mysql,我有三张表,分别是tbl_用户、tbl_供应商、tbl_分包商 我想从中选择这些行 tbl_用户数据库名称,数据库名称 tbl_供应商DB_公司名称 tbl_分包商B_公司名称 我正在使用这个查询 SELECT concat(db_fname,' ',db_lname) as fname from tbl_user) UNION (SELECT db_CompanyName as scn from tbl_supplier) UNION (SE

我有三张表,分别是tbl_用户、tbl_供应商、tbl_分包商

我想从中选择这些行

tbl_用户数据库名称,数据库名称

tbl_供应商DB_公司名称

tbl_分包商B_公司名称

我正在使用这个查询

SELECT concat(db_fname,' ',db_lname) as fname from tbl_user)
      UNION 
      (SELECT db_CompanyName as scn from tbl_supplier)
      UNION 
      (SELECT db_CompanyName as sucn from tbl_subcontractor)
它给了我正确的结果,但也给了我这个错误

!!注意:未定义索引:scn in C:\wamp\www\order\projectmanagement\transfer.php第48行呼叫 堆栈TimeMemoryFunctionLocation 10.0021260912{main} ..\transfer.php:0!注意:未定义索引:sucm in C:\wamp\www\order\projectmanagement\transfer.php第49行呼叫 堆栈TimeMemoryFunctionLocation 10.0021260912{main} ..\transfer.php:0

此查询的结果将显示在选择菜单上,如下所示:

echo'<select name="txt_transferredto" class="states">';
      while($row=mysqli_fetch_array($q)){
         $fname=$row['fname'];
         $companyname=$row['scn'];
         $subcompanyname=$row['sucm'];
      if($fname!=""){
       echo"<option value='$fname'>";echo $fname;echo"</option>";}
    else if($subcompanyname!=""){      
        echo"<option value='$subcompanyname'>";echo $subcompanyname;echo"</option>";}
    else if($companyname!=""){      
        echo"<option value='$companyname'>";echo $companyname;echo"</option>";}
      }
      echo'</select>';
在此菜单中显示结果,但也显示错误

我可以从这个菜单中选择数据,从tbl_用户处获取数据,做我想做的任何事情,但如果我选择数据,从tbl_供应商或tbl_分包商处获取数据,我不能做任何事情更新或选择或

我测试sql并给出结果,但我不知道这是什么问题 如何解决这个问题


我认为你的问题应该是:

SELECT concat(db_fname,' ',db_lname) as fname , 
S.db_CompanyName as scn,   SC.db_CompanyNam as sucn 
FROM tbl_user U,  tbl_supplier S, tbl_subcontractor SC

我认为你的问题应该是:

SELECT concat(db_fname,' ',db_lname) as fname , 
S.db_CompanyName as scn,   SC.db_CompanyNam as sucn 
FROM tbl_user U,  tbl_supplier S, tbl_subcontractor SC


您的查询结果将只有一个名为fname的字段,在将查询插入代码之前单独运行查询是个好主意,这样您就可以看到返回的内容。@Marco我在同一个结果旁边运行查询,这是我想要的结果,但问题是错误,当您在外部运行查询时,我将其张贴在此处,您是否看到任何名为“scn”的字段?@Marco是的,我看到该字段是从该查询中选择的也会出现在php页面上,但是我把它放在了错误的地方,因为结果只有一个字段,而您正试图访问3..您的查询结果只有一个名为fname的字段,在将查询插入代码之前单独运行查询是个好主意,这样您就可以看到返回的内容。@Marco我在同一个结果旁边运行查询,这是我想要的结果,但问题是错误,当您在外部运行查询时,我将其张贴在此处,您是否看到任何名为“scn”的字段?@Marco是的,我看到该字段是从该查询中选择的并且也出现在php页面上,但是我把它放在了错误的地方,因为结果只有一个字段,您正在尝试访问3.这个查询没有显示任何错误,但它在选择菜单中多次打印结果,而不是每行打印一次,它多次打印xxx,xxx只存在一次这是因为您没有键,哪个用户与哪个供应商和分包商有联系。因此,它将从tbl_用户、tbl_供应商和tbl_分包商中选择全部,但这3个表与我们之间没有任何关系我无法解决此问题,无法在选择菜单中重复名称?!这张表中的所有名称都是这样打印的fadi fadi company1 company1 company1这样打印的,而这张表没有任何关系Yes。因为这三个表之间没有关系。您的记录将是fname1,company1,company1,fname2,company1,company1。解决方法是将mysqli_fetch_array$q拆分为3个sql查询并放入3个数组变量。然后你比较变量扫描你能给我一个例子怎么做你的想法吗?!此查询未显示任何错误,但它会在“选择”菜单中多次打印结果,而不是每行打印一次,它会多次打印xxx,并且xxx只存在一次。这是因为您没有该键,即哪个用户与哪个供应商和分包商关联。因此,它将从tbl_用户、tbl_供应商和tbl_分包商中选择全部,但这3个表与我们之间没有任何关系我无法解决此问题,无法在选择菜单中重复名称?!这张表中的所有名称都是这样打印的fadi fadi company1 company1 company1这样打印的,而这张表没有任何关系Yes。因为这三个表之间没有关系。您的记录将是fname1,company1,company1,fname2,company1,company1。解决方法是将mysqli_fetch_array$q拆分为3个sql查询并放入3个数组变量。然后你比较变量扫描你能给我一个例子怎么做你的想法吗?!