【问题标题】:Comparing database table field values, with two different table in single database比较数据库表字段值,与单个数据库中的两个不同表
【发布时间】:2019-11-20 01:07:10
【问题描述】:

我正在学习php,所以我想使用php、mysql、bootstrap和javascript创建数据库和网站。

首先我的要求是在浏览器中显示带有名称和价格的所有频道列表,并带有复选框选项。

我在数据库中创建了两个表:

table-1(Allchannel list)
id,
channel name,
cost,
category.

table-2(broadcast packs)
id ,
channel name,
pack name,
cost,
broadcast pack name.

用户/客户选择感兴趣的渠道后:

1) 我想将那些选定的频道与广播包表进行比较

2) 如果所选频道名称与广播包表频道名称匹配

3) 我想在该页面的单独的小块/分区中显示这些“广播包名称”。

那么,谁能帮帮我。

谢谢。

代码:

<?php
include('connect.php');
$sadsdsd = $db->prepare("SELECT count(*) FROM AllChannelz");
    $sadsdsd->execute();
    $rowaas = $sadsdsd->fetch(PDO::FETCH_NUM);
    $wapakpak=$rowaas[0];
?>


  <script type="text/javascript">
function UpdateCost() {
  var sum = 0;
  var gn, elem;
  for (i=0; i<<?php echo $wapakpak ?>; i++) {
    gn = 'sum_m_'+i;
    elem = document.getElementById(gn);
    if (elem.checked == true) { sum += Number(elem.value); }
  }
  document.getElementById('totalcost').value = sum.toFixed(0);
   document.getElementById('totalitem' ).value = $wapakpak;
}
window.onload=UpdateCost
</script>




<?php
include('connect.php');
$result = $db->prepare("SELECT *  FROM AllChannelz");
        $result->bindParam(':userid', $res);
        $result->execute();
        for($i=0; $row = $result->fetch(); $i++){
    ?>
        <INPUT TYPE="checkbox" NAME="items[]" value="<?php echo $row['price'] ?>" id="sum_m_<?php echo $i ?>" 
        onclick="UpdateCost()" style="width: 21px;">

            <?php echo $row['ChannelName'] ?>------------<?php echo $row['price'] ?>
        </INPUT><br/>
<?php
    }
?><br>
<?php
$pdoQuery = "SELECT * FROM users";

$pdoResult = $db->query($pdoQuery);

$pdoRowCount = $pdoResult->rowCount();

echo "<h5>Total Count:$pdoRowCount</h5>";

?>
Total Cost : <input type="text" name="sen" id="totalcost" value=""><br/>
Total channels : <input type="text" name="sen" id="totalitem" value=""><br/>
<?php


?>

【问题讨论】:

    标签: javascript php mysql


    【解决方案1】:

    您可以通过使用 JOIN B/W 两个表来获得此信息。要实现这两个表的 JOIN B/W,您需要使用外键的概念。您可以将频道名称设为外键并使用 Select Query 如下:

    Select Broadcastpacknames from broadcastpacks JOIN Allchannellist ON Allchannellist.channelname = broadcastpacks.channelname ORDER BY id
    

    【讨论】:

    • 你能告诉我应该在哪个表中将频道名作为外键。
    • 将频道名作为广播包表中的外键
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多