Autor Zpráva
kn_h
Profil
zdravim. nefunguje mi strankovani:( jak tam amm limit tak se ty prispevky ztratej ale neobjevi se odkaz na ty stare co zmizi..:(
$pocet=mysql_num_rows($sql) or die (mysql_error());
$stranky=$pocet/20+1;

if($pocet > $od+20) {
echo "<font size='3'><b><a class='odkaz' href='onlinen.php?&amp;odkaz=vzkazy&amp;od=" . ($od+20) . "'>Další</a></b></font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
}
if($od-20 > 0) {
echo "<font size='3'><b><a class='odkaz' href='onlinen.php?&amp;odkaz=vzkazy&amp;od=" . ($od-20) . "'>Předchozí</a></b></font>&nbsp;";
}


cim to je?
diky za rady
kn_h
Profil
btw.
promena $sql je:
$sql = mysql_query("SELECT uziv_jmeno,id_uzivatele,aktivita,status from uzivatele order by id_uzivatele,uziv_jmeno,aktivita,status LIMIT 20");
kn_h
Profil
$limit = '2';
// předávání počtu přeskočených záznamů
$result = mysql_query("SELECT SQL_CALC_FOUND_ROWS * FROM admin_kniha ORDER BY datum DESC, id DESC LIMIT $limit OFFSET " . intval($_GET["offset"]));
$pocet = mysql_result(mysql_query(" SELECT FOUND_ROWS()"), 0);
if ($_GET["offset"]) {
    echo "<a href='$_SERVER[PHP_SELF]" . ($_GET["offset"] != $limit ? "?offset=" . ($_GET["offset"] - $limit) : "") . "'>zpět</a>\n";
}
if ($pocet > $_GET["offset"] + $limit) {
    echo "<a href='$_SERVER[PHP_SELF]?offset=" . ($_GET["offset"] + $limit) . "'>vpřed</a>\n";
}

// předávání čísla stránky
$result = mysql_query("SELECT SQL_CALC_FOUND_ROWS * FROM admin_kniha ORDER BY datum DESC, id DESC LIMIT $limit OFFSET " . ($limit * $_GET["strana"]));
$pocet = mysql_result(mysql_query(" SELECT FOUND_ROWS()"), 0);
if ($_GET["strana"]) {
    echo "<a href='$_SERVER[PHP_SELF]" . ($_GET["strana"] != 1 ? "?strana=" . ($_GET["strana"] - 1) : "") . "'>zpět</a>\n";
}
if ($pocet > $limit * ($_GET["strana"] + 1)) {
    echo "<a href='$_SERVER[PHP_SELF]?strana=" . ($_GET["strana"] + 1) . "'>vpřed</a>\n";
}


dal jsem tam i tenhle kód okopírovaný z php.vrana.cz a limit 2..
zoíbrazí mi to první a poslední příspěvek na každé straně :-(
bitbit
Profil
Todle je strankovani co sem kdysi udelal:

function strankovani($tabulka,$slovo1,$idprispevek,$pocet_na_str)
{
$pocet = MySQL_Query("SELECT id FROM $tabulka");
if (!$pocet) { 
echo "Došlo k chybě při zpracování dotazu v databázi.<br/>\n".MySQL_Error(); 
exit(); 
}
$p = MySQL_Num_Rows($pocet);
$strana = Ceil($p/$pocet_na_str);
echo "<br/><br/>Další stránky (celkem $slovo1: $p ):<br/>";
for ($x=1;$x<=$strana;$x++):
$levo=$idprispevek-1;
$pravo=$idprispevek+1;

if (($x==1)&&($idprispevek>=2)) { echo "<a class=\"odkaz\" href=\""; echo "index.php?idprispevek=$levo\""; echo "> << </a>";};
if ($x==$idprispevek) echo "$x"; else { echo "<a class=\"odkaz\" href=\""; echo "index.php?idprispevek=$x\""; echo "> ".$x." </a>"; };
if (($x==$strana)&&($idprispevek<$strana)) { echo "<a class=\"odkaz\" href=\""; echo "index.php?idprispevek=$pravo\""; echo "> >> </a>"; };
endfor;

}

Jak s tim pracovat:

$pocet_na_str = 20;
$idprispevek = $_GET[idprispevek]; // stranka blbe sem to tenkrat pojmenoval

//vypocty hodnot sql LIMITU
if (!IsSet($idprispevek)) $idprispevek=1;
  $pocatek = $idprispevek*$pocet_na_stranku-$pocet_na_stranku;  // pri strance 1 je to 0
  $konec = $idprispevek*$pocet_na_stranku; //pri strance 1 je to 20

  $dotaz = MySQL_Query("SELECT * FROM $tb_guestbook ORDER BY id DESC limit $pocatek,$konec");
  if(!$dotaz): 
    echo "Chyba při načítání vzkazů z databáze...";
  else:
   ....
  endif;

  strankovani($tb_guestbook,"příspěvků",$idprispevek,$pocet_na_stranku);



tady je videt: http://testbit.wz.cz/questbook/
kn_h
Profil
bitbit
:) dík snad bude fungovat. a co mam dosadit misto $slovo1?
bitbit
Profil
to tam ani bejt nemuselo, je to k doplneni

Další stránky (celkem $slovo1: $p ):

v prikladu je to příspěvků, může to být napřiklad článku apd.
kn_h
Profil
a co je to $idprispevek?
bitbit
Profil
$idprispevek = stranka (to cislo ve strankovani, nasobic vypoctu limitu, Meni se podle stranky, kterou si prohlizis

pokud ses na strance 2, tak $idprispevek je 2 a ve vypoctu spodniho cisla limitu se o 1 zmensi
kn_h
Profil
bitbit
takze tam nemusim nic dosazovat?
kn_h
Profil
bitbit
takhle. dal jsem tam ze $idprispevek = $_GET['idprispevek'];
ale i kdyz uz je prekrocenej limit na stranku, zadny odkazy dole se mi neukazaly:(
kn_h
Profil
už se mi to zobrazuje ale...
na kazde strance jsou ty stejne prispevky :'(
bitbit
Profil
Kdyztak mi poslete na mail (v profilu) ten vas php soubor, kde to strankovani pouzivate, at se muzu kouknout, zda nekde nemate chybku

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

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