MySQL / PHP - 如何从嵌套循环内部引用和比较当前循环字段名称

时间:2017-03-31 15:34:32

标签: php mysql

我正在制作电视指南。 我想做一个单独的查询“select * from programs”。 因为,我已经使用了大量的小查询,即每个通道1个,但效率低下。 有人可以帮忙看看这里有什么问题吗? 我收到了“致命错误:无法在script.php中使用mysqli_result类型的对象作为数组”

频道表

php -w file.php

节目表

name
bbcone
bbctwo

我可以在其他地方回复两个值$ program ['channel']和$ channel ['name'],它们都有效,例如BBC1。

我不能为我的生活找出如何循环,foreach频道,然后循环通过该频道的节目

(预期产出)

channel - time - title
bbcone - 6pm - news 
bbcone - 6.30 - weather 
bbcone - 7pm - the talk show 
bbctwo - 6pm - simpsons
bbctwo - 6.30 - futurama
bbctwo - 7pm - nature



$channels=mysqli_query($db,$getchans); 
$programmes=mysqli_query($db,$getprogs);  //holds all programmes

while ($channel = $channels->fetch_assoc())
{
css channel name divs and echo $channel['name']; //works

       while ($programme = $programmes->fetch_assoc()) 
       {
           if ($programme['channel'] == $channel['name']); 
           {    
            do programme divs
           }
       }
}

任何人都可以告诉我我做错了吗?

1 个答案:

答案 0 :(得分:0)

while ($channel = $channels->fetch_assoc())
{
  // $getprogs "select * from programmes where channel_name = $channel["channel_name"]"
  $programmes=mysqli_query($db,$getprogs);
  while ($programme = $programmes->fetch_assoc()) 
   {
   }
}