Jeg får denne fejl, når jeg vælger ordre oversigten!
eller
Mine kunder får denne fejl når de lister produkterne i en kategori!
1064 - 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 '-20, 20' at line 1
select o.orders_id, o.customers_name, o.payment_method, o.date_purchased, o.last_modified, o.currency, o.currency_value, s.orders_status_name, ot.text as order_total from orders o left join orders_total ot on (o.orders_id = ot.orders_id), orders_status s where o.orders_status = s.orders_status_id and s.language_id = '4' and s.orders_status_id = '1' and ot.class = 'ot_total' order by o.orders_id DESC limit -20, 20
Denne fejl er dukket op efter opdatering til mySQL version 4.1.xx på nogle af vore servere.
Det er den originale osCommerce-kode, der er ved at blive forældet i forhold til de mange opdateringer, der kommer til både php, mySQL og andre "hjælpe-systemer".
Løsningen er enkel, og BGsys gør det gerne for dig, men for en god skyld er opskriften herunder
Problemet opstår i en class-fil ved navn split_page_results.php og den findes 2 steder i systemet, så vi skal rette 2 steder.
shop/includes/classes/split_page_results.php linie 65-67 ser således ud
$offset = ($this->number_of_rows_per_page * ($this->current_page_number - 1));
$this->sql_query .= " limit " . $offset . ", " . $this->number_of_rows_per_page;
og det skal rettes til:
$offset = ($this->number_of_rows_per_page * ($this->current_page_number - 1));
if ($offset < 0) $offset = 0; // BGsys bugfix
$this->sql_query .= " limit " . $offset . ", " . $this->number_of_rows_per_page;
shop/admin/includes/classes/split_page_results.php linie 37-38 ser således ud
$offset = ($max_rows_per_page * ($current_page_number - 1));
$sql_query .= " limit " . $offset . ", " . $max_rows_per_page;
og det skal rettes til:
$offset = ($max_rows_per_page * ($current_page_number - 1));
if ($offset < 0) $offset = 0; // BGsys bugfix
$sql_query .= " limit " . $offset . ", " . $max_rows_per_page;
Hvis din shop ikke ligger i /shop, men / eller /lux eller /osclux, skal du naturligvis kigge det rigtige sted efter filen, og ikke som angivet i eksemplet herover.
Er du i tvivl - lad support gøre det for dig.