从数据库中检索两个表数据,并使用php显示和插入到新表中

从数据库中检索两个表数据,并使用php显示和插入到新表中,php,mysql,Php,Mysql,我有两个表名为input和out\u materials。这些是字段和数据 两张桌子的 第1表:输入 物料|编码|物料|名称|单位|入库数量 m219、mat1、pcs、215 第二张表:out_材料 物料|编码|物料|名称|单位|出库|数量 m219,mat1,件,15 表3:总计 物料|编码|物料|名称|单位|入库数量|出库数量|数量 m219、mat1、pcs、215、15200 注意:在这里,我试图从第一个表和第二个表中获取数据,而这个获取数据插入到第三个表中。下面给出了我的代码,但它不

我有两个表名为input和out\u materials。这些是字段和数据 两张桌子的

第1表:输入

物料|编码|物料|名称|单位|入库数量

m219、mat1、pcs、215

第二张表:out_材料

物料|编码|物料|名称|单位|出库|数量

m219,mat1,件,15

表3:总计

物料|编码|物料|名称|单位|入库数量|出库数量|数量

m219、mat1、pcs、215、15200

注意:在这里,我试图从第一个表和第二个表中获取数据,而这个获取数据插入到第三个表中。下面给出了我的代码,但它不起作用

$res=mysqli_query($con, "SELECT i.* , o.* FROM input i,out_materials o WHERE i.Materials_name=o.Materials_name");

                                    while($row=mysqli_fetch_array($res)){

                                     $inm_code = $row['Materials_code'];
                                     $inm_name = $row['Materials_name'];
                                     $inunit = $row['Unit'];
                                     $inqty = $row['Input_qty'];
                                     $outm_code = $row['Materials_code'];
                                     $outm_name = $row['Materials_name'];
                                     $outunit = $row['Unit'];
                                     $outqty = $row['Out_qty'];}

                                $sql2=mysqli_query($con, "INSERT INTO total (Materials_code,Materials_name,Unit,Input_qty,Out_qty) VALUES('$inm_code','$inm_name','$inunit','$inqty','$outqty')");

您的
$sql2
在while循环之外,这就是为什么它只插入最后一行。

欢迎使用堆栈溢出。请将你的问题包括在内,其他人可以测试。有关SQL相关问题,请参阅。还要检查如何使用准备好的语句。然后详细解释什么“不起作用”。还要检查MySQL错误。你说它不工作是什么意思。。在插入之前,您是否尝试过查看是否从数据库中获取数据?@danish-khan-I它不起作用意味着当我在新表中运行此代码时,仅插入1行数据。在我的数据库中,有更多未插入的数据。只有最后一行数据插入。这是症状…但您需要深入挖掘以找到原因。了解如何调试代码谢谢@danish-khan-I。我是php新手,所以我不懂。再次感谢你
$res=mysqli_query($con, "SELECT i.* , o.* FROM input i,out_materials o WHERE i.Materials_name=o.Materials_name");

                                    while($row=mysqli_fetch_array($res)){

                                     $inm_code = $row['Materials_code'];
                                     $inm_name = $row['Materials_name'];
                                     $inunit = $row['Unit'];
                                     $inqty = $row['Input_qty'];
                                     $outm_code = $row['Materials_code'];
                                     $outm_name = $row['Materials_name'];
                                     $outunit = $row['Unit'];
                                     $outqty = $row['Out_qty'];

                                $sql2=mysqli_query($con, "INSERT INTO total (Materials_code,Materials_name,Unit,Input_qty,Out_qty) VALUES('$inm_code','$inm_name','$inunit','$inqty','$outqty')");
} //notice