Autor | Zpráva | ||
---|---|---|---|
opsidiam Profil |
#1 · Zasláno: 15. 3. 2015, 22:10:09
dobry den mam problem
chcel by som na e-shop urobit dynamicke zobrazovanie po 4 v riadku urobil som tento script require "db.php"; $top = mysql_query("SELECT * FROM kategorie"); $r = mysql_num_rows($top); for($c=1; $c<$r+1; $c++){ if($c==1){echo "<table><tr><td width=\"700px\">";} if($c==5){echo "<table><tr><td width=\"700px\">";} if($c==9){echo "<table><tr><td width=\"700px\">";} if($c==13){echo "<table><tr><td width=\"700px\">";} require "db.php"; $top1 = mysql_query("SELECT * FROM kategorie WHERE id = '$c'"); while($za = mysql_fetch_object ($top1)){ $kat_id = $za->id; $meno = $za->meno; $viditelnost = $za->viditelnost; $link = $za->link; $ikona = $za->ikona; } echo "<a href=\"$link\"> <table><tr><td width=\"25%\" height=\"100\"> <img src=\"$ikona\" style=\"border-radius:10px\" width=\"250\" height=\"125\" /> </td></tr><tr><td align=\"center\">$meno</td></tr></table></a>"; if($c==4){echo "</td></tr></table><br />";}else{echo "</td><td>";} if($c==8){echo "</td></tr></table><br />";}else{echo "</td><td>";} if($c==12){echo "</td></tr></table><br />";}else{echo "</td><td>";} if($c==16){echo "</td></tr></table><br />";}else{echo "</td><td>";} } ?> 4,8,12,16,20,24.... tak to rozhadze prosim o radu ako na to po prypade aj nejaky ten script na to aby som sa ho chitil dakujem vopred |
||
Joker Profil |
#2 · Zasláno: 15. 3. 2015, 22:55:30
opsidiam:
Heh. Ten kód vypadá jako soutěž, jak to napsat co nejméně efektivně. Je mi záhadou, jak je možné psát: if($c==1){echo "<table><tr><td width=\"700px\">";} if($c==5){echo "<table><tr><td width=\"700px\">";} if($c==9){echo "<table><tr><td width=\"700px\">";} if($c==13){echo "<table><tr><td width=\"700px\">";} a neříct si: „Tohle přece nemůže být správně, musí existovat nějaký lepší způsob!“ Tady by si snad úplně stačilo představit, jak by se to dělalo manuálně, kdyby to byly papírové záznamy v kartotéce. Problém: Mám kartotéku se záznamy (a někde mám i lísteček, kolik těch záznamů celkem je). Úkol je vyrovnat je na stůl do komínků po čtyřech. Uvedený skript realizuje následující postup: Vyndám všechny záznamy z kartotéky. Spočítám, kolik jsem jich vyndal (shodou okolností to samé číslo, jako mám napsané na tom lístečku). Vrátím záznamy zpátky do kartotéky. Opakuji následující: - udělám čárku. - Podívám se, jestli počet čárek je 1. Pokud ano, začnu novou hromádku. - Podívám se, jestli počet čárek je 5. Pokud ano, začnu novou hromádku. - Podívám se, jestli počet čárek je 9. Pokud ano, začnu novou hromádku. - Podívám se, jestli počet čárek je 13. Pokud ano, začnu novou hromádku. - Vyndám záznam z kartotéky. - Položím záznam na hromádku. dokud počet čárek je menší než číslo, které jsem si dříve poznamenal. |
||
bestik_63 Profil |
#3 · Zasláno: 16. 3. 2015, 12:30:17
Ten kód ti určitě neuzavírá konec tabulky pokud c není dělitelelné 4 bez zbytku. Pokud potřebuješ pouze něco upravit a nebudeš se programováním živit, tak ti asi stačí přidat na konec podmínku, jinak si zkus něco vzít z toho co ti napsal Joker.
|
||
Časová prodleva: 9 let
|
0