I am interested in getting FreePBX running on an embedded Asterisk system, for example: http://rowetel.com/ip04, using sqlite3 rather than mysql.
As a first step I am trying to get FreePBX 2.4.0beta2 to run using sqlite3 on an Ubuntu x86 box. I have compiled PHP 5.2.5 and FreePBX runs Ok with mysql.
However when I swap to sqlite (as per the sqlite.readme file) I get errors like “undefined property” in theDB_common->quoteSmart( ) function,which traces to a missing variable:
Notice: Undefined property: DB_sqlite3::$dbsyntax in /usr/local/apache/php/lib/php/DB/common.php on line 451
The variable dbsyntax doesn’t exist in the sqlite3.php DB backend file I found on the PHP site. I suspect this file might be out of date compared the other PHP/DB files in my PHP install.
Could anyone please comment on the correct PHP version, DB version, and sqlite3.php files for sqlite3 support?
Thanks Carlos, but I think the problem is that we need an up to date version of sqlite3.php, the interface between PEAR:DB and the sqlite3 libraries. The sqlite3 libraries actually seems to be compiled into PHP 5 BTW, so we just need the missing link as above.
i am try install the freepbx2.4.0 with sqlite3 at past few days on a x86 PC, now i am get ready for sqlite3, just have a sql error.
i used some softwares version are:
php-4.3.9
php-pear-4.3.9
sqlite-3.3.6
sqlite3-0.5 for php-sqlite3.php
some bugs needs fixed for sqlite3 support:
newinstall.sqlite3.sql at line 378 add mohclass varchar(80) NOT NULL default ‘default’, sipname varchar(50) default NULL
change newinstall.sqlite3.sql at line 330 from “modules_xml” to “module_xml”
change newinstall.sqlite3.sql at line 35 “2.2.0beta3” to “2.4.0”
and i can install almost modules and create a extension, but if i click “apply changes” will show a FATAL SQL error:
[FATAL] SQL -
SELECT t.variable, t.value, d.value state FROM globals t JOIN (SELECT x.variable, x.value FROM globals x WHERE x.variable LIKE ‘OUTDISABLE_%’) d ON substring(t.variable,5) = substring(d.variable,12) WHERE t.variable LIKE ‘OUT_%’ UNION ALL SELECT v.variable, v.value, concat(substring(v.value,1,0),‘off’) state FROM globals v WHERE v.variable LIKE ‘OUT_%’ AND concat(‘OUTDISABLE_’,substring(v.variable,5)) NOT IN ( SELECT variable from globals WHERE variable LIKE ‘OUTDISABLE_%’ ) ORDER BY variable
1 error(s) occured, you should view the notification log on the dashboard or main screen to check for more details.
I am not a sql guy, so any guys can help me fix this sql error? thanks,
OK thats interesting that with PHP 4 the existing php3.sql backend must work OK. Nice. Thats might save some work.
Yes, I was also getting SQL errors like that - I used xdebug to track them down. I one case (admin/modules/core/functions.inc.php:2671) there was some simpler SQL code commented out that I used for now.
Well,
I am proud to announce that we have the first version of FreePBX/sqlite combo working in Astfin.
Some polishing is still needed mostly to shrink it in size, but overall we are in business.