Portál AbcLinuxu, 10. května 2025 00:13
SELECT požadované sloupečky FROM vaše tabulka LIMIT 10 OFFSET '$start'
kde místo požadované sloupečky vyplníte seznam sloupečků nebo *, doplníte jméno tabulky, 10 je počet záznamů na stránku a $start je vypočítaný offset od kterého se těch 10 začne vypisovat, ve vašem případě tedy 10*aktuální stránka (1. stránka musí mít číslo 0).
Tím získáte 10 záznamů, zvyšováním hodnoty offset se posouváte dál.
Nyní editační checkboxy, nejjednodužší je asi toto (předpokládejme že tabulka má primární unikátní klíč pojmenovaný "id" a že jsme již provedli předchozí SQL dotaz a máme jeho výsledek v proměnné $result). Nejprve vypíšeme hlavičku té tabulky (jistě zvládnete) a pak tělo:
while($o = pg_fetch_row($result)){
while ($row = pg_fetch_row($result, $i)) {
echo "<input type=\"checkbox\" name=\"r[$row[0]]\" value=\"1\" /> \n";
for ($j=1; $j < count($row); $j++) {
echo "".$row[$j]." \n";
}
echo " \n";
}
To vypíše selectnuté záznamy včetně checkboxů, bude fungovat pouze pokud se ID selectne jako první (v checkboxu je použit $row[0] tedy první položka z řádky.
Když celý výpis tabulky obalíte formulářem, můžete zjistit z pole r[] hodnoty, které byly označeny a s těmi dále pracovat.
Snad to pomůže.
1) první slovo má být "Dobrá" 2) má být pouze jeden while, a to ten druhý.
$start = IntVal($start); $dotaz=pg_query($connect,"SELECT * FROM k_1000_prev LIMIT 10 OFFSET $start");
$start = IntVal($start); $result = pg_query($connect,"SELECT * FROM k_1000_prev LIMIT 10 OFFSET $start"); if(pg_num_rows($result) > 0) { echo '<table>'; while ($row = pg_fetch_row($result)) { echo "<tr>"; echo '<td><input type="checkbox" name="r[' . $row[0] . ']" value="1" /></td>'; for ($i=0; $i < count($row); $i++) { echo '<td>'.$row[$i].'</td>'; } echo '</tr>'; } echo '</table>'; } else { echo "Nenalezen zadny zaznam"; }
input
typu text
do kterého by se zapisovala hodnota/proměnná, která je nyní v SQL dotazu reprezentována hodnotou 10.
Mám ale obavy, že vám to jen tak lehce nepůjde :(
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.