
iPhone developer
Профиль
Группа: Участник
Сообщений: 29
Регистрация: 6.6.2007
Где: Kiev
Репутация: нет Всего: нет
|
добрый вечер. пишу вам сюда - так как отчаялся. не могу сам справиться с задачей. есть у меня сайт на джумле. на нем есть каталог компаний. и нужно при просмотре каталога выводить кроме названия компании еще и картинку и описание. чего у меня не получается. вот уже третий день сижу, мучаюсь, вроде много перечитал, а допетрать не могу((( как по мне - проблема в том, что джумла где-то хранит свои параметры из классов, тоесть когда мне нужно было вывести тайтл и айди компании - я могу его вывести где угодно, а картинку и дескрипшин - не могу. есть класс в файле, в котором указывается, что нужно выводить именно тайтл и айди. | Код | <?php
jimport( 'joomla.application.component.view');
class scatalogsViewscatalogs extends JView { function display($tpl = null) {
global $mainframe, $option;
$db =& JFactory::getDBO(); $uri =& JFactory::getURI();
$company = $this->get( 'company' ); $comp=array(); foreach($company as $value){ $comp[mb_substr($value->title,0,1,'UTF-8')][]=$value; } $javascript = 'onchange="document.adminForm.submit();"';
/* $filter_catid = $mainframe->getUserStateFromRequest( $option.'cid', 'cid', 0, 'int' ); $query = ' SELECT id,title FROM #__scatalog_company where published=1'; $db->setQuery( $query ); $companys_id = $db->loadObjectList(); array_unshift($companys_id, JHTML::_('select.option', '0', '- '.JText::_('Select Company').' -', 'id', 'title')); $lists['catid']= JHTML::_('select.genericlist', $companys_id, 'cid', 'class="inputbox" size="1" '.$javascript, 'id', 'title', intval( $filter_catid ));*/
$filter_city = $mainframe->getUserStateFromRequest( $option.'filter_city', 'filter_city', 0, 'int' ); $query = ' SELECT id,title'.LANGSC.' as title FROM #__scatalog_city where published=1 order by title'.LANGSC.' '; $db->setQuery( $query ); $city_id = $db->loadObjectList(); array_unshift($city_id, JHTML::_('select.option', '0', '- '.JText::_('Select city').' -', 'id', 'title')); $lists['cityid']= JHTML::_('select.genericlist', $city_id, 'filter_city', 'class="inputbox_filter" size="1" '.$javascript, 'id', 'title', intval( $filter_city )); $filter_vid = $mainframe->getUserStateFromRequest( $option.'filter_vid', 'filter_vid', 0, 'int' ); $query = ' SELECT id,title'.LANGSC.' as title FROM #__scatalog_vid where published=1 order by title'.LANGSC.' '; $db->setQuery( $query ); $vid_id = $db->loadObjectList(); array_unshift($vid_id, JHTML::_('select.option', '0', '- '.JText::_('Select vid').' -', 'id', 'title')); $lists['vidid']= JHTML::_('select.genericlist', $vid_id, 'filter_vid', 'class="inputbox_filter" size="1" '.$javascript, 'id', 'title', intval( $filter_vid ));
$this->assignRef( 'company',$comp); $this->assignRef('lists', $lists);
parent::display($tpl); } } ?>
|
и есть темплейт, в котором я вывожу то что мне нужно.. вот что получается: | Код | <?php // no direct access defined('_JEXEC') or die('Restricted access'); ?> <form action="<?echo JRoute::_( 'index.php?option=com_scatalog§ion=scatalogs');?>" method="post" name="adminForm"> <table width="100%" border="0" cellspacing="0" cellpadding="5"> <tr><td width="33%"><label for="filter_city"> <?php echo JText::_( 'LIST CITY' ); ?><br /> <? echo $this->lists['cityid'];?> </label></td> <td width="33%"><label for="filter_vid"> <?php echo JText::_( 'LIST VID' ); ?><br /> <? echo $this->lists['vidid'];?> </label></td> <td width="33%"> </td> </tr></table> <hr />
<?
foreach($this->company as $key =>$value){ ?> <h2><? echo $key; ?></h2><br>test <table width="100%" border="0" cellspacing="0" cellpadding="2"> <? $k=0; foreach($value as $cvalue){ echo ($k==0?'<tr>':'')."<td width=\"33%\"> <a href=\"".JRoute::_( 'index.php?option=com_scatalog§ion=company&cid='.$cvalue->id)."\">{$cvalue->title}</a> </td>".($k==2?'</tr>':''); $k++; $k=($k==3?0:$k); } for(;$k<=2 and $k!=0;$k++){ echo ($k==0?'<tr>':'')."<td width=\"33%\"> </td>".($k==2?'</tr>':''); } ?> </table> <hr /> <? } // echo $this->lists['catid']; ?>
<input type="hidden" name="option" value="com_scatalog" /> <input type="hidden" name="section" value="scatalogs" /> <?php echo JHTML::_( 'form.token' ); ?> </form>
|
Вы уж извините, если я не называю вещи своими именами, или говорю что-то не верно, просто я не могу похвастаться знаниями пхп, но очень нужно решить проблему. Это сообщение отредактировал(а) mobi_vic - 19.11.2009, 18:29
|