PDA

Zobacz pełną wersję : Problem z listowaniem w komponencie.



Finarfin
09-09-2008, 15:26
Mam taki oto problem. Otóż tworze panel admina do zarządzania produktami. Niby wszystko jest git, panel do edycji kategorii już zrobiłem i działa wszystko OK - wyświetla je, daje możliwość kasowania, usuwania etc.

Niestety jeżeli chodzi o listowanie produktów to już tak różowo nie jest - dodawać je to i owszem dodaje, ale niestety nie wyświetla ich w panelu admina. I tu mam zagwozdkę co niby robię nie tak, bawię się z tym już 4h, niestety bez efektów. Może ktoś mądry od razu zobaczy błąd(sekcja odpowiedzialna za generowanie produktów została przeze mnie umieszczona w przedziale oznaczonym "----"):


<?php
## Check if the file is included in the Joomla Framework
defined('_JEXEC') or die ('No Acces to this file!');

## Required helper for showing extra info (not stored in DB).
require_once(JPATH_COMPONENT.DS.'helper'.DS.'helpe r.php');

## Setup the toolbars.
JToolBarHelper::title( JText::_( 'Podglad produktow' ) );
JToolBarHelper::publish();
JToolBarHelper::unpublish();
JToolBarHelper::editListX();
JToolBarHelper::addNew();
JToolBarHelper::deleteList();
?>

<table width="100%" border="0">
<tr>
<td>
<div align="right">
<form method="POST" name="thisform"
action="index.php?option=com_produkty"><select size="1"
name="ordering">
<option value=""><?php echo JText::_( 'Wybierz' ); ?></option>
<option value="catid"><?php echo JText::_( 'Sortowanie po id kategorii' ); ?></option>
<option value="published"><?php echo JText::_( 'Sortowanie po publikacji' ); ?></option>
</select> <input type="submit" name="button" id="button"
value="Sortuj!" /></form>
</div>
</td>
</tr>
</table>
------------------------------------------------------------------------
<form action="index.php" method="POST" name="adminForm">
<table class="adminlist" width="100%">
<thead>
<tr>
<th width="20"><input type="checkbox" name="toggle" value=""
onclick="checkAll(<?php echo count($this->items); ?> ) ;" /></th>
<th width="20"><?php echo JText::_( 'Nazwa' ); ?></th>
<th width="79"><?php echo JText::_( 'id' ); ?></th>
<th width="20"><?php echo JText::_( 'Usuń' ); ?></th>
<th width="71"><?php echo JText::_( 'PUBLISHED' ); ?></th>

</tr>
</thead>
<?php

$k = 0;
for ($i = 0, $n = count($this->items); $i < $n; $i++ ){

## Give give $row the this->item[$i]
$row = &$this->items[$i];
$published = JHTML::_('grid.published', $row, $i );
$checked = JHTML::_('grid.id', $i, $row->id );
## Making links for redirection and deletion.
$link = 'index.php?option=' .$option. '&task=edit&cid[]='.$row->id;
$delete = 'index.php?option=' .$option. '&task=remove&cid='.$row->id;

?>
<tr class="<?php echo "row$k"; ?>">
<td><?php echo $checked; ?></td>
<td><a href="<?php echo $link; ?>"> <?php echo $row->nazwa; ?> </a></td>
<td>
<div align="center"><?php echo $row->catid; ?></div>
</td>
<td>
<div align="center"><a
href="javascript:if (confirm('<?php echo "". JText::_( 'DELETE' )." ". JText::_( 'Produkt' )." ".$row->nazwa."?" ;?> ')){
location.href='<?php echo $delete; ?>';}"
title="<?php echo "Usunac produkt?";?>"> <img
src="../administrator/images/delete_f2.png" width="15" height="15"
border="0" /></a></div>
</td>


<td>
<div align="center"><?php echo $published; ?></div>
</td>

</tr>
<?php } ?>
<?php
$k=1 - $k;

?>

</table>
--------------------------------------------------------------------------

<input name="option" type="hidden" value="<?php echo $option; ?>" /> <input
name="task" type="hidden" value="" /> <input name="boxchecked"
type="hidden" value="0" /> <input name="controller" type="hidden"
value="application" />

<table width="100%" align="center" class="adminlist">
<tfoot>
<tr>
<td colspan="7">
<div align="center"><?php echo $this->pagination->getListFooter(); ?></div>
</td>
</tr>
</tfoot>
</table>
</form>

wojtekkk87
11-09-2008, 00:23
a moze kontroler pokazesz?

Finarfin
11-09-2008, 00:39
Dobra, załączam komponent, aczkolwiek jest on w fazie pisania...zarządzanie kategoriami działa jak należy, niestety produkty już nie cykają tak jak trzeba(ten najistotniejszy kod wrzuciłem własnie poniżej)...

Jakby Ci się chciało to przeglądnąć to będę wdzięczny ;)

wojtekkk87
11-09-2008, 13:40
Nie teraz bo nie mam czasu moze za jakis tydzien ja bede mogl pomoc no ale czekaj... moze jakis kolega mnie uprzedzi...

p.s. najistotniejszy kod to kontroler, helper, model a to co pokazales to tyko wyglad... chociaz i w tym moga byc bledy, jednak na pewno nie jest to kod najistotniejszy ;]

Finarfin
11-09-2008, 14:19
Ale produkty są normalnie dodawane, stąd wydaje mi się, że akurat w tym kodzie jest ten błąd...

Finarfin
15-09-2008, 13:50
Hmm..faktycznie wina raczej jest gdzieś po stronie helpera...ale jakby ktoś mógł przeglądnąć ten kod na szybko i dokładnie zobaczyć o co tu może głównie chodzić to byłbym wdzięczny...bo patrzę, poprawiam i nie mam nadal pomysłu...

W załączniku dość aktualny kod.

Finarfin
19-09-2008, 13:44
Problem rozwiązany - musiałem poprawić sporo linii komponentu...