MyXoops Forum

Forum - myXOOPS German Support

0 + 1 = ?  
Geben Sie das Ergebnis der Berechnung ein
Sie haben max. 10 Versuche.
 
* = Erforderlich

Wieso wird hier nur eine Zeile ausgegeben?

Betreff: Wieso wird hier nur eine Zeile ausgegeben?
von migoe am 13.06.2004 21:16:50

Ich habe wieder etwas an dem Modul CDBase gebastelt und möchte den Block für die neu eingetragenen Alben so erweitern, daß die 10 letzten eingetragenen Alben angezeigt werden. Die Abfrage selber steht und funktioniert auch, aber ich finde den Grund nicht, warum immer nur der letzte Eintrag ausgegeben wird - vielleicht kann mir jemand weiterhelfen?

Zitat:
function last_disc_show() {
global $xoopsDB;
$block = array();
$myts =& MyTextSanitizer::getInstance();

// Auslesen der Daten aus der Datenbank - Abfrage begrenzt auf 10 Einträge

$sql = "SELECT d.id_art, d.album, d.sello, d.imagen, d.imagen2, d.anio, d.descripcion, a.artista FROM ".$xoopsDB->prefix("cdbase_discs")." as d, ".$xoopsDB->prefix("cdbase_artists")." as a WHERE a.id_art=d.id_art ORDER BY id DESC LIMIT 0,10";
$result = $xoopsDB->query($sql);
while (list($id_art, $album, $sello, $imagen, $imagen2, $anio, $descripcion, $artista) = $xoopsDB->fetchRow($result)) {

// Aufbereiten der Daten für die Templates

$album = $myts->makeTboxData4Show($album);
$sello = $myts->makeTboxData4Show($sello);
$imagen = $myts->displayTarea($imagen, 0, 0, 1, 1);
$imagen2 = $myts->makeTboxData4Show($imagen2);
$anio = $myts->makeTboxData4Show($anio);
$descrepcion = $myts->makeTboxData4Show($descripcion);
$artista = $myts->makeTboxData4Show($artista);

// Definition der Smarty-Variablen für die foreach-Schleife

$info['image']=$imagen;
$info['produktion']=$imagen2;
$info['beschreibung']=$descripcion;
$info['label']=$sello;
$info['artist']=$artista;
$info['disc']=$album;
$info['id_art']=$id_art;
$info['jahr']=$anio;

$block['info'][] = $info;
return $block;
}
}


Normalerweise müßten doch jetzt bei der Ausgabe im Block über das Template auch alle 10 ausgelesenen Einträge ausgegeben werden, das geschieht aber nicht! So lasse ich es im Template ausgeben

Zitat:
<{foreach item=info from=$block.info}>

<table class="itemHead">
<tr>
<td align="center">
<a href="<{$xoops_url}>/modules/cdbase/index.php?id_art=<{$info.id_art}>"><{$info.image}></a>
</td>
<td>
<p><a href="<{$xoops_url}>/modules/cdbase/index.php?id_art=<{$info.id_art}>"><{$info.artist}></a> |
<{$info.disc}> | <{$info.label}> (<{$info.jahr}>)</p>
<p align="justify"><{$info.beschreibung}></p>
<p align="right"><{$info.produktion}></p>
</td>
</tr>
</table>

<{/foreach}>


Im Block wird jetzt aber leider nur der letzte Eintrag angezeigt - die anderen 9 Einträge werden unterschlagen. An welcher Stelle mache ich den Fehler?

migoe

Aktuell aus dem Forum

Forum Thema Antworten Views Letzter Beitrag
Modulentwicklung New Xoops Xcreate Module 0 5503 26.11.2025 15:22
efkan Gehe zum letzten Beitrag
Modulentwicklung XOOPS Custom Field Module 1 1907 24.11.2025 11:21
Goffy Gehe zum letzten Beitrag