2016-02-08 67 views
0

我希望下面的有道理......SQL/PHP來抓住從多個表項的最小和最大

我抓住所有的使用以下(另一個腳本執行getChildRecords)的兒童記錄:

<?php $children = $this->item->getChildRecords(); ?> 

我然後做一個foreach抓住所有的孩子們家的ID:

<?php 
foreach ($children as $i => $id) 
    { 
    $house = JTable::getInstance('house', 'MyTable'); 
    $house->load($id); 
?> 

然後我拉了回來袋鼠的數量爲每一個孩子的房子進入MS:

<div><?php $house->rooms; ?></div> 

和整理了我的foreach:

<?php } ?> 

孩子表可能包含以下房間的條目:

ID - 22間 客房 - 1 | ID - 22個 房間 - 5 | ID - 22 房間 - 2 | ID - 22間 客房 - 3

問:

我想表明的是最小至最大數量從所有子項的房間。

即1-5

+0

我不知道實際的問題是什麼? – Epodax

+1

如果我只是使用<?php $ house-> rooms; ?> - 我會得到1523(房間) - 我想要的是最小/最大,即1-5 – user991830

回答

0

你甚至需要該頁面上的單個子項嗎?或者它是一個概述? 如果您不需要單獨條目,您可以建立一個像

public function getMinAndMaxRooms() { 
    $con=mysqli_connect("localhost","my_user","my_password","my_db"); 
    $result mysqli_query($con,"SELECT id, MIN(rooms), MAX(rooms) FROM rooms GROUP BY id"); 
    if ($result !== false) { 
     return $result->fetch_all(MYSQLI_NUM); 
    } 
    return array(); 
} 

且模板中循環通過它的功能:

<?php foreach ($this->item->getChildRecords() as $child) : ?> 
<?php echo $child[0) . ': ' . $child[1] . '-' - $child[2] ?> 
<?php endforeach; ?>