Hallo zusammen ich habe eine Tabelle in der Kategorien gespeichert sind und eine Tabelle Produkte in der Datenbank die zu einer Kategorie gehört.
Ich will nun alle Kategorien aussuchen und die Produkte dazu und in einem array speichern und diese mit return zurück geben.
Mein Modul sieht so aus
das return geht an view.html.phpPHP-Code:class ProdukteModelProdukt extends JModel
{
function getProdukt( $options )
{
$id = @$options;
$select = 'm.kategorie,m.id';
$from = '#__products_kategorie AS m ';
$wheres[] = 'm.published = 1';
$wheres[] = 'm.id ='.$id;
$parent = 'm.parent ='.$id;
$order[] = 'parent, ordering';
$query = "SELECT " . $select .
"\n FROM " . $from .
"\n WHERE " . implode( "\n AND ", $wheres ).
"\n OR ".$parent.
"\n ORDER BY " . implode( "\n AND ", $order );
$this->_db->setQuery( $query );
$result = $this->_db->loadObjectList();
for ($i=0, $n=count($result); $i < $n; $i++) {
$row = &$result[$i];
$query ='SELECT produkt FROM #__products_produkt WHERE art='.$row->id;
$this->_db->setQuery( $query );
$produkte = $this->_db->loadObjectList();
if ($produkte){
for ($b=0, $c=count($produkte); $b < $c; $b++) {
$result[$i] = array_merge($result[$i],array($produkte[$b]));
}//for
}//if
unset($produkte);
}//for
return @$result;
}
}
die Ausgabe sieht in Moment so ausPHP-Code:<?php
jimport( 'joomla.application.component.view');
class ProdukteViewProdukt extends JView
{
function display($tpl = null)
{
$document =& JFactory::getDocument();
$document->addStyleSheet('components/com_produkte/assets/css/produkt.css');
$cid = JRequest::getVar( 'cid' );
$model = &$this->getModel();
$rows = $model->getProdukt($cid);
$this->assignRef('rows' , $rows);
parent::display($tpl);
}
}
?>
wenn ich mir nun rows mit print_r in default.php ausgeben lasse sieht es so aus
PHP-Code:Array (
[0] => stdClass Object ( [kategorie] => Brötchen [id] => 28 )
[1] => Array ( [kategorie] => Weizenbrötchen [id] => 29
[0] => stdClass Object ( [produkt] => Schnittbrötchen )
[1] => stdClass Object ( [produkt] => Dänische Brötchen )
)
)
möchte aber gerne das hier haben
Array (
[0] => stdClass Object ( [kategorie] => Brötchen [id] => 28 )
[1] => stdClass Object ( [kategorie] => Weizenbrötchen [id] => 29
Array (
[0] => stdClass Object ( [produkt] => Schnittbrötchen )
[1] => stdClass Object ( [produkt] => Dänische Brötchen )
)
)
)


LinkBack URL
About LinkBacks
Zitieren
Lesezeichen