Şu anda ben hizmetlerinin yanı sıra ilişkili tablolardan şeyi almak için bu deyimi kullanın bir sql ve php sorunu: MySQL virgülle ayrılmış değerler
$db = $this->getDbo();
$query = $db->getQuery(true);
// Select the required fields from the table.
$query->select(
$this->getState(
'list.select', 'a.*'
)
);
$query->from('`#__services_service` AS a');
$query->where("a.zone");
$query->select('zone.name AS zone, zone.description AS zone_description, zone.price AS zone_price, zone.interval_recommended AS interval_recommended');
$query->join('LEFT', '#__services_zones AS zone ON zone.id = a.zone');
$query->select('category.icon AS category');
$query->join('LEFT', '#__services_categories AS category ON category.id = a.category');
Ama katılmak bölge tablosunda
, virgül vardır '1,2' değerleri ayrılmış ve hizmetleri kendi bölgelerine göre gruplandırdığım bir ilişkisel dizi oluşturduktan sonra tekil bir hizmet tekil bir bölgeye gider, tablodaki değer '1,2' olduğunda, her ikisinde de olması gerekir. zonlar ...'zone.name AS zone'
nedeniyle bir his var çünkü o zaman sadece bir isim verir ve
'zone AS zone'
derlerse virgülle ayrılmış sayıları döndürürsünüz ...
Burada dizi sıralamak nasıl:
foreach($this->items as $item){
if(!isset($zones[ $item->zone ]))
$zone_items[ $item->zone] = array();
$zone_items[ $item->zone ][] = $item;
$zones[$item->zone] = array(
'zone' => $item->zone,
'zone_interval' => $item->interval_recommended,
'zone_description' => $item->zone_description,
'zone_price' => $item->zone_price,
'items' => $zone_items[$item->zone]
);
}
ve ben bunu göstermek: Herhangi bir yardım büyük takdir
<?php foreach($zones as $zone): ?>
<div class="row-fluid zones-page">
<div class="row-fluid zone-title-block">
<div class="span4 zone-name"><h1><?php echo $zone['zone']; ?></h1></div>
<div class="span7 zone-description">
<?php echo $zone['zone_description']; ?>
<?php if($zone['zone_interval'] == 1): ?>
<span class="interval pull-right">Interval Recommended</span>
<?php endif; ?>
</div>
</div>
<?php foreach($zone['items'] as $items) :?>
<div class="row-fluid zone-services-contain">
<div class="span1"><div class="zone-icon"><?php //echo $items->category; ?></div></div>
<div class="span11 zone-services">
<h4><?php echo $items->name; ?></h4>
<div><?php echo $items->description; ?></div>
</div>
</div>
<?php endforeach; ?>
<div class="row-fluid zone-amount">
only <div><?php echo 'R' . $zone['zone_price']; ?></div>
</div>
</div>
<div class="bicycle-divider">
<div class="bicycle-icon"></div>
</div>
<?php endforeach; ?>
.
Services
tablo gibi görünüyor:
Ve Zones
Tablo: insanlar genellikle çok-çok ilişkileri ile başa çıkmak için bağlantı tabloları kullanmak neden
Tablo neye benziyor? –
hangisi? .. hizmetler, bölgeler veya kategoriler? –
Bölge tablosu. –