[英]Use SQL Result to Query second time and grab more results via php
我正在從數據庫中獲取學校名稱列表。 當用戶單擊學校名稱時,我希望代碼獲取2-3個與用戶單擊的學校名稱相關的其他屬性。
我的單一學校名稱列表代碼:
$query = mysql_query("Select schoolname, product, username, password from credentials c
join products p on p.productid = c.productid
join schools s on s.schoolid = c.schoolid
join icons i on i.productid = p.productid
order by s.schoolname");
echo '<ul>';
while($row = mysql_fetch_array($query))
{
echo "<li> <a href='#'>" . $row['schoolname'] . "</a> </li>";
}
回聲'';
電流輸出:
預期產量:
學校名稱僅顯示一次(區別不起作用,因為每個學校名稱都有2-3個產品憑據
用戶單擊學校的能力。 那么下方的學校名稱將向下移動(切換效果),用戶可以查看所點擊學校的產品,用戶名和密碼(例如:用戶點擊了學校A)
productname2,用戶名,密碼
B學校
1)您應該使用GROUP BY學校名稱,但是請注意,這只會給您一個唯一的學校名稱行僅一個值,因此您可能會丟失一些其他數據。 另外,如果您想一次獲取所有數據且不丟失產品憑據,則可能需要多個GROUP BY語句
2)很少有這樣做的方法。 您可以一次獲取所有需要的數據,生成帶有學校名稱和隱藏產品名稱的html輸出,並通過javascript進行切換。
<div class = "school-name">
School name 1
<div class = "product-name" style="display: none;">Product1</div>
<div class = "product-name" style="display: none;">Product2</div>
<div class = "product-name" style="display: none;">Product3</div>
</div>
和JavaScript,我正在使用jQuery
$(document).ready(function() {
$('.school-name').on('click', function(e) {
$(e.currentTarget).children('.product-name').show();
}
});
一旦您有少量數據,此方法就可以正常工作。 否則,最好使用AJAX調用來獲取element的子節點。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.