Autor Zpráva
Martin7
Profil
dobry den
mam hotove jednoduhe strankovani ze mi to vypise vsechny stránky ale chtel bych udelat aby to stránkováni vypadalo nejak takto :
1 ... 5 | 6 | 7 | 8 | 9 | 10 | 11 ... 22

pomuze mi nekdo ?

zde je kod :
<?php
if ($stranka=="") {
$stranka=1;
$vynechat=0;
}
else {
$vynechat=$stranka*7-7;
}

$vypsat_clanky=mysql_query("SELECT nazev, obsah, autor, datum FROM clanky
ORDER by id DESC LIMIT $vynechat,7;");
while (list($nazev, $obsah, $autor, $datum) = mysql_fetch_row($vypsat_clanky)) {
echo "<table id=\"clanky\" align=\"center\">
<tr><td>$nazev</td></tr>
<tr><td>$obsah</td></tr>
<tr><td>Autor: $autor | Datum: $datum</td></tr></table>
<br />"; 
}
?>
<div align="center">
<?php>
$pocet_radku=mysql_query("SELECT COUNT(*) AS id FROM
clanky");
$pocet_radku=mysql_fetch_array($pocet_radku);

$pocet_stran=ceil($pocet_stran=$pocet_radku["id"]/7);
$i=0;

while ($i<$pocet_stran) {
$i++;
echo "<a href=\"index.php?stranka=$i\">$i</a>";
}


?>
</div>
Alphard
Profil
$stranka obsahuje číslo aktuální stránky
3 je rozmezí, bylo by vhodné použít proměnnou nebo konstantu, ale nechci to znepřehledňovat

for ($i = 1; $i <= $pocet_stran; $i++) 
{
  if ($i == 1 || $i == $pocet_stran || ($i >= $stranka - 3 && $i <= $stranka + 3))
    echo "<a href=\"index.php?stranka=$i\">$i</a>";
}
Martin7
Profil
Díky moc funguje to
Martin7
Profil
jeste jestli by neslo udelat aby oznacena stránka byla tucne
Alphard
Profil
for ($i = 1; $i <= $pocet_stran; $i++) 
{
  if ($i == 1 || $i == $pocet_stran || ($i >= $stranka - 3 && $i <= $stranka + 3))
    if ($i == $stranka)
      echo "<b>$i</b>";
    else    
      echo "<a href=\"index.php?stranka=$i\">$i</a>";
}
keeehi
Profil
Martin7
to víš že šlo

for ($i = 1; $i <= $pocet_stran; $i++) 
{
  if ($i == 1 || $i == $pocet_stran || ($i >= $stranka - 3 && $i <= $stranka + 3))

    echo ($i == $_GET["stranka"] ? "<b>" : "")."<a href=\"index.php?stranka=$i\">$i</a>".($i == $_GET["stranka"] ? "</b>" : "");
}
Martin7
Profil
Díky moc hoši

Vaše odpověď

Mohlo by se hodit

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: