Community @ The Turning Gate

Support community for TTG plugins and products.

NOTICE

The Turning Gate's Community has moved to a new home, at https://discourse.theturninggate.net.

This forum is now closed, and exists here as a read-only archive.

  • New user registrations are disabled.
  • Users cannot create new topics.
  • Users cannot reply to existing topics.

You are not logged in.

#1 2014-09-05 07:35:00

rod barbee
Moderator
From: Port Ludlow, WA USA
Registered: 2012-09-24
Posts: 17,830
Website

Troubleshooting TTG-BE

From Ben regarding the most common problems occurring with ttg-be:

____________________________

The two main issues we encounter are similar in nature between hosts, but differ in the exact error reported.  The issues are session.save_path being borked, and the servers not having the required database modules.

1. Parsedown issue

CE4 was built when PHP 5 was the current version.  Many hosts have automatically updated sites to PHP 7, which brings an incompatibility with the Markdown library that earlier versions of CE4 shipped with.  This raises an error like:

Function name must be a string|#0 /homepages/3/d174041332/htdocs/keeneye/ttg-be/framework/lib/
Parsedown.php(931): Parsedown->element(Array) #1 /homepages/3/d174041332/htdocs/keeneye/ttg-be/framework/lib/Parsedown.php(257): 
Parsedown->elements(Array) #2 /homepages/3/d174041332/htdocs/keeneye/ttg-be/framework/lib/Parsedown.php(48): Parsedown->lines(Array)
 #3 /homepages/3/d174041332/htdocs/keeneye/ttg-be/publisher/application/models/Album.php(962): Parsedown->text('
...

To fix this, download the latest copy of TTG BE, then replace the following file on your server from that in the download: ttg-be/framework/lib/Parsedown.php


2. Session issue

session.save_path is a server configuration that should point to a system directory that sessions can be saved in.  The sessions remember what you're doing when visiting a site - which we mainly use to remember that somebody is logged in, and to keep track of the items in a customer's cart.  It's common that the session data fails to save to the location specified in the session_path.  As I typically reply, this either means the specified directory doesn't exist or not writable.


An example error message for the session_path error follows:

session_start() [function.session-start]: open(/var/php_sessions/sess_505d32a955e636379b163ba3378fa5f1, O_RDWR) failed: No such file or directory (2)|#0 [internal function]: ErrorHandler::handleError() #1 /home/ttguser/public_html/ttg-be/framework/init.php(94): session_start() #2 /home/ttguser/public_html/ttg-be/admin/index.php(17): require_once('/home/ttguser...') #3 {main}|URL: /ttg-be/admin/index.phpUnknown: open(/var/php_sessions/sess_505d32a955e636379b163ba3378fa5f1, O_RDWR) failed: No such file or directory (2)|Unknown|0

The value for session.save_path can be deduced from the message (e.g. /var/php_sessions), and confirmed by visiting the phpinfo page at (at http://youriste.com/ttg-be/admin/?info) and searching for session.save_path.  The solution is to contact the host and ask them to make sure the path exists and is writable.  As far as I can remember, the hosts have fixed this in every instance.

3. Database module issue


TTG BE requires two modules for the database to work: sqlite and pdo_sqlite.  These are standard modules that should be enabled, but some hosts have disabled them. 
An example error message for the database modules follows:

could not find driver|#0 /home/ttguser/public_html/cart/framework/dao/PdoExtended.php(49): PDO->__construct('sqlite:../cart_...', NULL, NULL, Array) #1 /home/ttguser/public_html/cart/framework/dao/SQLiteHandler.php(11): PdoExtended->__construct('sqlite:../cart_...', NULL, NULL, Array) #2 /home/ttguser/public_html/cart/framework/dao/DAOFactory.php(15): SQLiteHandler->__construct(Array) #3 /home/ttguser/public_html/cart/application/init.php(39): DAOFactory->getDBHandler() #4 /home/ttguser/public_html/cart/framework/init.php(88): include_once('/home/ttguser/pu...') #5 /home/ttguser/public_html/cart/index.php(21): require_once('/home/ttguser/pu...') #6 {main}|URL: /cart/index.php

The text 'Could not find driver', with references to PDO or sqlite, indicates the issue.  I usually visit the phpinfo page (at http://yoursite.com/ttg-be/admin/?info) and search for pdo and sqlite to check for support.  Alternatively, a special URL available only with the cart, lists the available modules and highlights pdo_sqlite and sqlite, such as here: http://yoursite.com/ttg-be/cart/?check


The advice is to contact host's technical support to request the modules be enabled.  As with the session_path issue, I can't recall a case where a host hasn't come to the party and fixed this.


Rod 
Just a user with way too much time on his hands.
www.rodbarbee.com
ttg-tips.com, Backlight 2/3 test site

Offline

Board footer

Powered by FluxBB