Táblázat oszlopainak formázása
Adott az alábbi php. Ez egy táblázatot generál egy csv-ből. hogyan tudnám megcsinálni, hogy a második oszlop középre a harmadik oszlop jobbra legyen zárva?
<table border="1" cellpadding="0" cellspacing="0" width="290">
<tr height="14">
<td width="120"><a>Megnevezés</td>
<td width="80" align="center"><a>Méret</td>
<td width="70" align="right"><a>Ár</td>
</tr>
<?php
$row = 1;
$handle = fopen("arak.csv", "r");
$sor=1;
while (($data = fgetcsv($handle, 1000, ";",'"')) !== FALSE)
{
if ($sor==2 || $sor==4 || $sor==6)
{
echo "<tr>";
for($i=0;$i<3;$i++)
{
echo "<td>".$data[$i]."</td>\n";
}
echo "</tr>\n";
}
$sor++;
}
fclose($handle);
?>
</table>
■ <table border="1" cellpadding="0" cellspacing="0" width="290">
<tr height="14">
<td width="120"><a>Megnevezés</td>
<td width="80" align="center"><a>Méret</td>
<td width="70" align="right"><a>Ár</td>
</tr>
<?php
$row = 1;
$handle = fopen("arak.csv", "r");
$sor=1;
while (($data = fgetcsv($handle, 1000, ";",'"')) !== FALSE)
{
if ($sor==2 || $sor==4 || $sor==6)
{
echo "<tr>";
for($i=0;$i<3;$i++)
{
echo "<td>".$data[$i]."</td>\n";
}
echo "</tr>\n";
}
$sor++;
}
fclose($handle);
?>
</table>
Szüntesd meg a for-ciklust
algoritmus smafu?
Kell egy tömb aminek annyi eleme van ahány oszlopos a táblázat és a for ciklus ciklusváltozójával a megfelelő indexű tömbelemet bele kell írni a td-be.
átláthatóság, egyszerőség smafu?
Esetleg ajánlhatnál neki egy jó kis Datagrid osztályt is. Úgy még paraméterezhetőbb és újrafelhsználható a kód! (Akár olyat ami még tetszőleges adatbázisból is kiszedi az adatokat...)
átlátható?
És igen, csinálhatsz egy függvényt (hagyjuk az objektumokat most), ami html táblázat egy sorát adja vissza és a kódodban mindenhol ahol akár 1 akár 100 oszlopos táblázatod van használhatod ezt a függvényt. Tényleg a tiéd átláthatóbb?
A magam részéről nem szertek html-t látni a kódban, ezért előszeretettel használok template rendszert és html generátor osztályokat a PEAR-ből. A kód újrafelhasználás is igen hasznos. Dehát nem vagyunk egyformák, van aki szereti a spagettit :)
látod ebben azért egyetértünk
kötekedés?
Itt nem arról van szó, hogy én hogyan oldanám meg, hanem az alapvetően jó elgondolás mentén próbálkozó kérdezőnek egy igen rossz megoldást javasoltál. Szerintem.
Nem személyes ügy :)