Witam.
Mój problem polega na tym, że gdy wejdzie się w dział download, w którym domyślne sortowanie to "Nazwa", pod tabelką z typem sortowania, czyli tam, gdzie powinna wyświetlić się tabelka z listą plików, wyskakuje takie coś:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 0,20' at line 1You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 0,20' at line 1
Tak więc, po przeczytaniu komunikatu, znalazłem podany fragment kodu:
$rows = dbcount("(*)", "downloads", "download_cat='$cat_id'");
if (!isset($rowstart) || !isNum($rowstart)) $rowstart = 0;
if (!isset($sort) || !isNum($sort)) $sort = 0;
$sorting = $cdata['download_cat_sorting'];
if ($sort == 1) $sorting = "download_title ASC";
if ($sort == 2) $sorting = "download_count DESC";
if ($sort == 3) $sorting = "download_datestamp DESC, download_title ASC";
if ($rows != 0) {
$result = dbquery("SELECT * FROM ".$db_prefix."downloads WHERE download_cat='$cat_id' ORDER BY $sorting LIMIT $rowstart,20");
$numrows = dbrows($result); $i = 1;
while ($data = dbarray($result)) {
if ($data['download_datestamp']+604800 > time()+($settings['timeoffset']*3600)) {
$new = " <span style='font-size:8px;'>".$locale['410']."</span>";
} else {
$new = "";
}
Nie wydaje mi się on błędny... Jednak gdy ktoś zmieni typ sortowania na Data Dodania lub Popularność, tabelka ładuje się prawidłowo (również po zmianie z powrotem na Nazwa).
EDIT: Wymyśliłem!
Przepraszam za zaśmiecanie forum. Jeśli uznacie ten temat za pomocny, proszę go zostawić - w przeciwnym wypadku usuńcie go.
Problemem był fakt, iż domyślnie nie ustawiono sposobu sortowania. Wystarczy podmienić wszystkie linki, które prowadzą do działu download z przykładowo:
http://www.strona.pl/downloads.php?cat_id=1
na
http://www.strona.pl/downloads.php?cat_id=1&sort=1
tym samym ustawiając z góry typ sortowania (można wpisać 2 lub 3, lub dowolny dozwolony).
Edytowane przez QooBooS dnia 28.06.2008 19:42:44
|