odkazy podle počtu příspěvků
8 příspěvků
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
Zdravim, opět bych potřeboval pomoct :-). Vymejšlim si systém, kterej mi bude zapisovat logy do databáze. Dál jsem udělal, že je možné si je prohlídnout v tabulce. Napadlo mě ale, že když tam bude moc přístupů, tak se ta tabulka bude dlouho načítat a tak jsem si ještě vymyslel takovou kravinu, která bude zobrazovat tabulku po 50 přístupech a nahoře se zobrazí odkazy na dalších 50... To jsem udělal jako <a href="stejna_stranka.php?idprispevek=1(2,3,4....)"> a tím idprispevkem se pak násobí nějaká ta podmínka třeba v cyklu. Nejdříve jsem se pokoušel vložit do "for" ještě "while", to mi dělalo paseku a tak jsem dal do "while" "if($id>=$pocatek && $id<=$konec)". To jsem si moc nepomoh :-)). Těch prvních 50 to zobrazí, ale dál už nic :-(. Nemohl byste mi někdo pomoct? Nemyslim, že to bude těžký, ale já holt s PHP teprv začínám. Toto je moje druhá aplikace v PHP, první byl redakční systém. Předem dík <? include "db.php"; $vysledek = MySQL_Query("SELECT * FROM logovani ORDER BY datum"); $pocet = MySQL_Num_Rows($vysledek); echo "<center><font class=cas>Zobrazit přístupy:<br>"; $pristupy = Ceil($pocet/50); for ($x=1;$x<=$pristupy;$x++): echo "<a href=zobrazit.php?idprispevek=$x> " . ($x*50-49) . "-" . $x*50 . "</a>  "; endfor; while ($zaznam = MySQL_Fetch_Array($vysledek)): if (!IsSet($idprispevek)) $idprispevek=1; $pocatek = $idprispevek*50-50; $konec = $idprispevek*50-1; if ($id>=$pocatek && $id<=$konec): $datum = Date("d.m.Y", $zaznam['datum']); $id = $zaznam['id']; $rozliseni = $zaznam['rozliseni']; $prohlizec = $zaznam['prohlizec']; $kam = $zaznam['kam']; $jmeno = $zaznam['jmeno']; if ($jmeno = "webmaster Martin Beran"): $jmeno = "<a href='mailto:martin@v-klub.cz'>webmaster Martin Beran</a>"; elseif (!$jmeno): $jmeno = "<p align=center><i>žádné</i></p>"; endif; echo "<tr><td width='3%'><p>$id</p></td> <td width='10%'><p><a href='zobrazit.php?id=$id'>$datum</a></p></td> <td width='10%'><p>$rozliseni</p></td> <td width='26%'><p>$prohlizec</p></td> <td width='30%'><p style='font-size: 9px'> <a href='$kam' target='_blank'>$kam</a></p></td> <td width='21%'><p>$jmeno</p></td></tr>"; endif; endwhile; ?>
-
za to by te mira zabil :) pouzivej LIMIT v MySql ...
-
no jsou lidi, co kvuli zjisteni jednoho policka tahaji celou nekolikamegovou tabulku, takze je to hnus, ale uz me to neprekvapi :(
-
To je fakt, už jsem to vylepšil pomocí $pocatek = $idprispevek*50-49; $konec = $idprispevek*50; MySQL_Query("SELECT * FROM logovani WHERE (id >= $pocatek) AND (id <= $konec) ORDER BY datum") Tak co, už je to lepší? A jak jsi to myslel ty pomocí toho limitu? PS: Ještě, že jsem to neudělal tak blbě, jak jsem to vymejšlel, to by měl mira asi radost. Je fakt, že u logování je kravina načítat celou tabulku, docela by to zdržovalo.
-
Precti si v SQL sekci miruv thread: k cemu slouzi limit a where v mysql
-
$pocatek=40; $konec=50; MySQL_Query("SELECT * FROM logovani LIMIT $pocatek,$konec");
-
toto jsem sem psat nechtel protoze nevim jestli ma id jako autoincrement.
-
to master: doufal sem ze ma? a taky mi to z rovna v tuto hodinu moc racinalne neuvazuje tak jsem ho nato neupozornil