GuruCMS vananenud versioon ja PHP5.3 koos MySQL baasiga

Meiega on ühendust võtnud osad kliendid, kellel kas cPanel serverile kolimise peale või MySQL turvauuenduse järgi ei toimi enam GuruCMS sisuhaldus.
Vananenud koodiga GuruCMS (toetatud kuni 2005 ?) sisuhaldus soovib eranditult viimase versioonina PHP5.3 ning MySQL andmebaasi vanemat versiooni, kuna sisaldab uuemates versioonides esinevat reserveeritud sõna rows. Mida teha, kui teil on GuruCMS kasutusel ja leht ei toimi:

1. Kontrollige, et PHP versioon oleks kindlasti 5.3 (saate näha halduspaneeli kaudu või phpinfo() alt)
2. Kontrollige, et init.php failis oleks korrektsete pathidega:

define ('ROOT_DIR', .....

Ning et kaust nimega GuruCMSX.X.X oleks domeenikaustast 1 aste kõrgemal!
3. Kontrollige vealogisi – kui seal on kirjas samalaadne viga:

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 ...

ja see sisaldab muutujat “rows”, liikuge edasi järgmiste punktidega (muul juhul võtke ühendust oma veebimeistriga!)
4. Leidke oma domeenikataloogist üks aste üleval asuv kaust kujul gurucms2.X.X
5. Muutke selle kausta alamkaustas asuval failil (shared_incl/class_entity_list.php) class_entity_list.php real 70 olev kood:

$found=$DB->query('SELECT FOUND_ROWS() as rows',5);

ära koodiks:

$found=$DB->query('SELECT FOUND_ROWS() as `rows`',5);

6. Salvestage muudatused

Peale seda peaks jätkuma teie sisuhalduse tavapärane töö.

Lisainfona:
Probleem eksisteerib sellepärast, et:
– Pathi probleem: Ülekolimisel luuakse küll full path symlink aga GuruCMS ei pruugiosata seda otse kasutada (selleks peakski siis muutma/kontrollima root_dir määrangut)
– Andmebaasi probleem: MariaDB kui ka MySQL uutes versioonides on “rows” reserveeritud võtmesõna, mida ei tohiks päringus kasutada!
https://mariadb.com/kb/en/library/reserved-words/
https://dev.mysql.com/doc/refman/5.7/en/keywords.html

Comments are currently closed.