NNovaMedlem sedan feb. 2005216 inlägg Frågan#1 Jag vill skriva ut så här:
<ul>
<li>länken|/li>
<li>länken|/li>
<li>länken|/li>
<li>länken|/li>
<li>länken|/li>
</ul>
<ul>
<li>länken|/li>
<li>länken|/li>
<li>länken|/li>
<li>länken|/li>
<li>länken|/li>
</ul> os.v
Antalet li kommer inte att vara delbart med fem alla gånger utan det kan bli ett eller 5 li i sista ul.
Den här koden använder jag nu och den radar upp alla <li> inom ett <ul>
<ul><?php $sql = mysql_query("select c.categories_id, cd.categories_name, cd.aktiv, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '0' and c.categories_id = cd.categories_id and cd.aktiv = '1' and cd.language_id='" . (int)$languages_id ."' order by sort_order, cd.categories_name ") or die(mysql_error());
while($rows = mysql_fetch_array($sql)) {
echo '<li><a href="' . tep_href_link(FILENAME_DEFAULT, 'cPath=' . $rows['categories_id']) . '">' . $rows['categories_name'] . '</a></li>';
} ?></ul>
Hur gör jag för att ordna det?
PPeddaMedlem sedan juni 20006 031 inlägg Något sånt här borde fungera
<?php
$sql = mysql_query("select c.categories_id, cd.categories_name, cd.aktiv, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '0' and c.categories_id = cd.categories_id and cd.aktiv = '1' and cd.language_id='" . (int)$languages_id ."' order by sort_order, cd.categories_name ") or die(mysql_error());
$i = 0;
while($rows = mysql_fetch_array($sql)) {
if($i == 0) {
echo "<ul>";
}
echo '<li><a href="' . tep_href_link(FILENAME_DEFAULT, 'cPath=' . $rows['categories_id']) . '">' . $rows['categories_name'] . '</a></li>';
$i = ($i < 4 ) ? $i++ : 0;
if($i == 0) {
echo "</ul>";
}
}
if($i != 0) {
echo "</ul>";
}
?>
(otestad kod)
NNovaMedlem sedan feb. 2005216 inlägg Liten följdfråga, om jag vill skriva ut 9 stycken li innan ul hur gör jag då?
ändra $i < 4 till $i < 8 ?
NNovaMedlem sedan feb. 2005216 inlägg
voigtann1 skrev:
ändra $i < 4 till $i < 8 ?
Trodde det också, men det skriver fortfarande ut 5.
när jag kör:
$i = ($i < 8 ) ? $i++ : 0;
i en for-loop så få jag alltid $i == 0
ändrade till:
$i = ($i < 8 ) ? ++$i : 0;
och verkar fungera bättre, vet inte om det behövs men: http://php.voigt.se/sandbox/wf/nova/list.php
NNovaMedlem sedan feb. 2005216 inlägg voigtann1:
Fungerar bra, tackar!