使用两个foreach循环返回错误

时间:2017-05-26 08:52:58

标签: php

 <?php
$id = $_GET['id'];
    $getAlbumCusId = getAlbumCusId($id); //first function to get siteIds from first table from first database    
    foreach ($getAlbumCusId as $AlCusId) {
        $proId = $AlCusId['siteid']; // got siteIds, return 2 items

        $viewinv = viewinv($proId); // second function to get prices from first table from second database
        foreach ($viewinv as $vinv) {
            echo $vinv['price']; // but return 11 items
        }
    }
    ?>

首先function从第一个siteid开始table返回db并返回两个项目,它是正确的,但现在我想获得{{1}来自第二个price的第一个function中的第二个table,但它会返回11个项目!但是我希望第一个函数中的两个项目得到db值,我知道我做错了什么但是price我不知道怎么解决这个问题。

目标:我有两个项目(来自第一个功能)我只想获得这两个项目的价格。

更新:问题已解决;

3 个答案:

答案 0 :(得分:0)

也许,在第二个表中,您有相同商品的许多价格(在不同时间),因此您应该按日期DESC订购价格并将结果限制为1以获得最后价格。

答案 1 :(得分:0)

确保您的查询完美,您正在使用它来获取第二个函数中的数据
select price from second_table where proid = '$proid'

答案 2 :(得分:0)

确保您正在将数据库名称与表(db1.tablename,db2.tablename)联系,否则如果第一个数据库中存在相同的表,即db1,则从db1.tablename而不是db2.tablename <获取结果/ p>