webForumDet fria alternativet

Dela upp/Sortera

3 svar · 269 visningar · startad av Yossarian

YossarianMedlem sedan aug. 200469 inlägg
#1

Vill fuska till det lite med uppdelning/sortering av data från databas. Kommit halvvägs med min fulkod. Nån som vill hjälpa till? Vad som händer nu...är...att första tabellcellen blir bra. Men sen lägger sig resten i cell 2 på en enda rad?

Koden:

<TABLE width=98%>

     <TR>
     <TD>

     <?
     $query = "SELECT * FROM grupper WHERE  grupp= '$grupp' AND alternativ='l' ORDER BY titel ASC";
     $result = mysql_query($query) or die(mysql_error());
     $antalrader = mysql_num_rows($result);
     $sidor=ceil($antalrader/3);

     $i = 1;

     echo '<table bgcolor="#F9F7F7" cellspacing="0" cellpadding="0"><tr><td><B>LASERTONER</B><BR><BR></td><tr><td>';
     while($row = mysql_fetch_array($result)) {
     ?>

     <a class="meny" target="main_shop" href="webshop.php?page=vgrupp&id=<?=$row["id"]?>&maskin=<?=$row["titel"]?>"><?=$row["titel"]?></a>

     <?
     if ($i%$sidor == 0) {
     echo '</TD><TD>';
     } else {
     echo '<BR>';

     $i++;
     }   }
     ?>
     </TABLE>
     </TABLE>

Här kan man se hur d blir...

http://www.daytoner.com/meny2_test.php?grupp=hp

The_HulkMedlem sedan juni 20031 837 inlägg
#2

ett problem kan vara att du aldrig avslutar din TR, finns på flera ställen i din kod

sen vet jag inte vad du tänkt att

     </TABLE>
     </TABLE>

skulle göra, du bör no kontrollera din HTML-kod så den blir ordentlig

sen när jag tittade på resultatet så ser jag att du int heller avslutar body och html

hur vill du egentligen att sidan ska se ut?
ska de bli tre kolumner med alla produkter?
hur ska kolumnerna fyllas? alltså ska först första kolmumnen fyllas sedan andra och sist tredje eller ska den byggas upp radvis?

YossarianMedlem sedan aug. 200469 inlägg
#3

Nja, html-koden är nog korrekt...klistrade inte med början o slutet av dokumentet. Kändes onödigt.... Utan tog delen med koden som jag behövde hjälp med. Fast visst, glömt nån <TR> o <TD> såg jag där...ska justera.

Sen ska det fyllas på i 3 kolumner ja. I bokstavordning, där dom första 15 (beroende på hur många produkter d är/kategori) hamnar i den första/vänstra. Sedan kommer 15 i nästa o sen får man se hur många som hamnar i den sista...efter det inte alltid är jämt antal produkter som ska delas upp.

FuelMedlem sedan okt. 20001 285 inlägg
#4

Jag har hackat lite.. här får du t.ex 3 celler per rad oberoende av hur mycket det finns i DB´n

<?
$get_yossarian = mysql_query($sql) or die ("<h2>ERROR: </h2>".mysql_error());
if ($antal = mysql_num_rows($get_yossarian) > 0) {
?>
<table width="100%">
<?
$cell = 0;

while ($row = mysql_fetch_array($get_yossarian))
{
	if ($cell == 0) {
	    echo "<tr>\n";
	}
	
	echo "<td width=\"33%\">\n";
	echo $row['Yossarian']."\n";
	echo "</td>\n";
	
	$cell++;
	
	if ($cell == 3) {
	    echo "</tr>\n";
	    $cell = 0;
	}
}
if (($cell < 3) && ($cell != 0)) {
	for ($ss = $cell; $ss < 3; $ss++) {
		echo "<td width=\"33%\">-</td>\n";
		if ($ss == 3) {
		    echo "</tr>\n";
		}
	}
}
?>
</table>
<?
}
?>
132 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)