Autor | Zpráva | ||
---|---|---|---|
Andrew19 Profil |
#1 · Zasláno: 28. 11. 2008, 22:40:15
mám tento kód:
define ("ROWS", 3); // zde je include souboru s konstantami $spojeni = mysql_connect("localhost","root","xxx"); mysql_select_db('aaa', $spojeni); mysql_query("SET NAMES 'UTF-8';"); if (!isset($_GET["celkem"])) //pokud nevíme, kolik bude záznamů tak to zjistíme... { $vysledek=mysql_query("select count(*) as pocet from zbozi"); $zaznam=mysql_fetch_array($vysledek); $celkem=$zaznam["pocet"]; } else { $celkem=$_GET["celkem"]; } if ($celkem>ROWS) { if (!isset($_GET["od"])) $od=1; else $od=$_GET["od"]; $vysledek=mysql_query("select * from zbozi where kategorie='SJEZDOVE_LYZE' ORDER BY nazev "." limit ".($od-1).", ".ROWS); echo "Zboží: ".$od."-"; echo (($od+ROWS-1)<=$celkem)?($od+ROWS-1):$celkem; echo " z celkem $celkem "; //začátek - vytvoř odkaz pouze pokud nejsme na začátku if ($od==1) echo "Začátek | "; else echo "<a href=\"".$_SERVER["PHP_SELF"]."?celkem=$celkem&od=1\">Začátek</a>& nbsp;| "; //zpět - vytvoř odkaz pouze pokud nejsme v prvních ROWS if ($od<ROWS) echo "Předchozí | "; else echo "<a href=\"".$_SERVER["PHP_SELF"]."?celkem=$celkem&od=".($od-ROWS)."\" >Předchozí</a> | "; //další - vytvoř, pouze pokud nejsme v posledních ROWS if ($od+ROWS>$celkem) echo "Následující | "; else echo "<a href=\"".$_SERVER["PHP_SELF"]."?celkem=$celkem&od=".($od+ROWS)."\" >Následující</a> | "; //poslední - to je posledních (zbytek po dělení ROWS) záznamů if ($od>$celkem-ROWS) echo "Konec <BR>"; else echo "<a href=\"".$_SERVER["PHP_SELF"]."?celkem=$celkem&od=".($celkem-$celk em%ROWS+1)."\">Konec</a><BR>"; } echo "<p> </p>"; echo "<p> </p>"; while ($zaznam=MySQL_Fetch_Array($vysledek)): echo "<table width=600 border=0>"; echo "<tr>"; echo "<td width=250><a href='skriptadetail2.php?id=".$zaznam["id"]."'>".$zaznam["nazev"]."</a ></td>"; echo "<td width=250>".$zaznam["bezna_cena"]."</td>"; echo "<td width=50>".$zaznam["nase_cena"].",--</td>"; echo "</tr>"; echo "</table>"; endwhile; jak jste si jistě všimli tak jsou tu dva výběry z databáze první na zjištění kolik je řádků v databázi a druhý na výpis konkrétního zboží!!! takhle když je to napsané tak to nedává smysl jelikož to spočítá všechyn řádky v databázi ale vypíše jen ty které splnují klauzuli where !!! ale funguje to a když chci dát do prvního výběru také klauzuli where nějak takto : $vysledek=mysql_query("select count(*) as pocet from zbozi where kategorie='SJEZDOVE_LYZE'"); |
||
Sicario Profil * |
#2 · Zasláno: 29. 11. 2008, 17:07:52
Andrew19
if ($celkem>ROWS) ... V kategorii SJEZDOVE_LYZE je zrejme mene nez 4 zaznamy. |
||
Kajman_ Profil * |
#3 · Zasláno: 29. 11. 2008, 17:43:36
Nebo je špatně předána getem proměnná celkem.
|
||
Andrew19 Profil |
#4 · Zasláno: 30. 11. 2008, 14:22:04
ano je to tak máte pravdu kluzule if ($celkem>ROWS) ... když je v databázi méně záznamů tak způspobí že se nevypíšou:-(
|
||
Časová prodleva: 16 let
|
0