Autor | Zpráva | ||
---|---|---|---|
felix Profil * |
#1 · Zasláno: 13. 1. 2009, 14:23:55
Ahoj takto vypisuji z databaze a z tabulky download:
<?php define ("ROWS", 10); $vysledek_down = mysql_query("select count(*) as pocet from download"); list($celkem) = mysql_fetch_array($vysledek_down); { if (!isset($_GET["od"])) $od=1; else $od=$_GET["od"]; $vysledek_down=mysql_query("select * from download limit ".($od-1).", ".ROWS); } ?> <?php echo "<table>"; while ($zaznam=MySQL_Fetch_Array($vysledek_down)) .... .... ?> To mi vypisuje veskera data z tabulky download a ted by jsme chtel nekde udelat odkazy, aby jsem z tabulky download vypisoval treba jen nekterou kategorii. Napr. ted mam v tabulce rozdelena data do tri druhu a chci mit moznost kliknutim na odkaz zobrazit pouze ten jeden druh. Vim ze takto si vyberu tu kategorii ale nevim jak to vse propojit v jednom souboru aby hsem nemusel mit treba pet souboru pro pet kategorir $vysledek_down = mysql_query("select count(*) as pocet from download WHERE d_kategorie = 'upgrade'"); |
||
keeehi Profil |
#2 · Zasláno: 13. 1. 2009, 14:46:37
tohle -
$vysledek_down = mysql_query("select count(*) as pocet from download WHERE d_kategorie = 'upgrade'"); $vysledek_down = mysql_query("select count(*) as pocet from download WHERE d_kategorie = '".$_GET["kategorie"]."';"); a ty odkazy budou vypadat takto: <a htef="script.php?kategorie=xxxx">yyyy</a> |
||
felix Profil * |
#3 · Zasláno: 13. 1. 2009, 15:00:39
$vysledek_down = mysql_query("select count(*) as pocet from download WHERE d_kategorie = '".$_GET["kategorie"]."';"); Notice: Undefined index: kategorie in C:\dev\www\888\download.php on line 52 Napise mi to tuto chybu, vim ze neam tedy definovanou promenou ".$_GET["kategorie"]." ale fakt netusim co tam zadat? |
||
tiso Profil |
#4 · Zasláno: 13. 1. 2009, 15:09:19
felix - principiálne takto:
$query="select count(*) as pocet from download"; if(isset($_GET['kategorie'])){$query.="where d_kategorie='$_GET[kategorie]'";} $vysledek_down=mysql_query($query); Ale treba myslieť na ošetrenie vstupnej hodnoty, a ten skript by sa mal inak prekopať. |
||
felix Profil * |
#5 · Zasláno: 13. 1. 2009, 15:36:23
<?php define ("ROWS", 10); $query="select count(*) as pocet from download"; if(isset($_GET['kategorie'])){$query.="where d_kategorie='$_GET[kategorie]'";} $vysledek_down=mysql_query($query); list($celkem) = mysql_fetch_array($vysledek_down); { if (!isset($_GET["od"])) $od=1; else $od=$_GET["od"]; $vysledek_down=mysql_query("select * from download WHERE d_kategorie = '".$_GET["kategorie"]."' limit ".($od-1).", ".ROWS); } ?> <?php include "strankovani.php"; echo "<a href='download.php?kategorie=upgrade' class='odkaz_vyber'>Upgrade</a> ?> Tak sem se v tom asi stratil uplne...Sice mi to vypise tak jak ma po kliknuti na odkaz ale pred kliknutim mi to hlasi chybu: Notice: Undefined index: kategorie in C:\dev\www\888\download.php on line 64 A po kliknuti a vyselektovani: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\dev\www\888\download.php on line 61 Zrejme si to nejak nerozumi s tim mim strankovanim. PLs poradte |
||
felix Profil * |
#6 · Zasláno: 13. 1. 2009, 16:17:05
Prosim nevite nekdo?
|
||
tomasek Profil * |
#7 · Zasláno: 13. 1. 2009, 16:36:30
Zkusil jsem to takto, ale take mi to nejde:
<?php include "config.php"; $query = "select * from download"; if(isset($_GET['kategorie'])){$query.="where d_kategorie='$_GET[kategorie]'";} $query=mysql_query($query, $link) or die("SQL nešlo provézt"); echo "<a href='download.php?kategorie=upgrade' class='odkaz_vyber'>Upgrade</a> <a href='download.php?kategorie=navod' class='odkaz_vyber'>Návod</a>"; echo "<table class='tabulka_download'>"; while ($zaznam=MySQL_Fetch_Array($query)) { .... Vypisi se mi vsechny polozky, ale po kliknuti na odkaz mi to vyhodi hlasku SQL nešlo provezt. Kde je chyba? |
||
tomasek Profil * |
#8 · Zasláno: 13. 1. 2009, 17:11:56
Psl poradte...
|
||
Mastodont Profil |
#9 · Zasláno: 13. 1. 2009, 17:19:26
{$query.="where d_kategorie='$_GET[kategorie]'";} Chybí ti mezera před WHERE. |
||
tomasek Profil * |
#10 · Zasláno: 13. 1. 2009, 17:40:14
Super to je ono diky..
Ted uz bych jenom potreboval vlozit spatky strankovani ktere vypada takto aleted nevim jak ho pouzit dohromady s tim kodem: <?php define ("ROWS", 10); $vysledek_down = mysql_query("select count(*) as pocet from download"); list($celkem) = mysql_fetch_array($vysledek_down); { if (!isset($_GET["od"])) $od=1; else $od=$_GET["od"]; $vysledek_down=mysql_query("select * from download limit ".($od-1).", ".ROWS); } echo "Počet položek: ".$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> | "; //zpět - vytvoř odkaz pouze pokud nejsme v prvních ROWS if ($od<ROWS) echo "Zpět | "; else echo "<a href=\"".$_SERVER["PHP_SELF"]."?celkem=$celkem&od=".($od-ROWS)."\">Zpět</a> | "; //další - vytvoř, pouze pokud nejsme v posledních ROWS if ($od+ROWS>$celkem) echo "Další | "; else echo "<a href=\"".$_SERVER["PHP_SELF"]."?celkem=$celkem&od=".($od+ROWS)."\">Další</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-$celkem%ROWS+1)."\">Konec</a><BR>"; ?> |
||
tomasek Profil * |
#11 · Zasláno: 13. 1. 2009, 19:01:26
Tak se tu s tim lopotim ,ale porad nic..
<?php include "config.php"; $link=mysql_connect(SQL_HOST, SQL_USERNAME, SQL_PASSWORD); mysql_select_db(SQL_DBNAME); $query = "select * from download"; if(isset($_GET['kategorie'])){$query.=" where d_kategorie='$_GET[kategorie]'";} $query=mysql_query($query, $link) or die("SQL nešlo provézt"); define ("ROWS", 50); if (!isset($_GET["celkem"])) //pokud nevíme, kolik bude záznamů tak to zjistíme... { $vysledek=mysql_query("select count(*) as pocet from download where d_kategorie='$_GET[kategorie]'"); $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 download"." limit ".($od-1).", ".ROWS); echo "Záznamů: ".$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> | "; //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-$celkem%ROWS+1)."\">Konec</a><BR>"; } ... Takto to asi bude nesmysl ze? Hlasi: Notice: Undefined index: kategorie in C:\dev\www\888\download.php on line 63 a to je tento: $vysledek=mysql_query("select count(*) as pocet from download where d_kategorie='$_GET[kategorie]'"); a zadne strankovani mi to neudela, asi si s tim neporadim, nevi nekdo? |
||
tomasek Profil * |
#12 · Zasláno: 13. 1. 2009, 19:42:34
Tak jeste jednou script:
<?php include "config.php"; $link=mysql_connect(SQL_HOST, SQL_USERNAME, SQL_PASSWORD); mysql_select_db(SQL_DBNAME); $query = "select * from download"; if(isset($_GET['kategorie'])){$query.=" where d_kategorie='$_GET[kategorie]'";} $query=mysql_query($query, $link) or die("SQL nešlo provézt"); define ("ROWS", 5); if (!isset($_GET["celkem"])) //pokud nevíme, kolik bude záznamů tak to zjistíme... { $vysledek=mysql_query("select count(*) as pocet from download"); $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 download"." limit ".($od-1).", ".ROWS); echo "Záznamů: ".$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> | "; //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-$celkem%ROWS+1)."\">Konec</a><BR>"; } echo "<a href='download.php?kategorie=upgrade' class='odkaz_vyber'>Upgrade</a> <a href='download.php?kategorie=navod' class='odkaz_vyber'>Návod</a> <a href='download.php?kategorie=jine' class='odkaz_vyber'>Jiné</a> <a href='download.php' class='odkaz_vyber'>Všechny</a>"; echo "<table class='tabulka_download'>"; $sloupcu = 1; $i = 0; while ($zaznam=MySQL_Fetch_Array($vysledek)) { ...... Ted mi to sice krasne strankuje ale zase mi nefunguji ty odkazy kdyz to chci mit rozdelene podle kategorii.. PROSIM PORADTE |
||
tomasek Profil * |
#13 · Zasláno: 13. 1. 2009, 21:38:09
Opravdu mi nikdo neporadi jak tyto dve funkce spojit v jednu je mi uz z toho celkem jasne proc to nejde, pro trideni mam jiny vypis z databaze, nez pro strankovani, ale vubec se mi nedari to nejak zkloubit dohromady aby to strankovalo a i tridilo...
|
||
tomasek Profil * |
#14 · Zasláno: 14. 1. 2009, 08:18:27
Alespon nejakou malou radu jak na to. DIKY!
|
||
Časová prodleva: 15 let
|
0