I have just installed a clean version of SuiteCRM 7.7, with demo data and it still fails.
Server is Ubuntu 16.04
PHP 7 - all prereq’s installed
MySQL Database
Installation was successful no issues/warnings.
I have looked in the apache2 error.log and see this:
PHP Warning: strpos(): Empty needle in /home/rick/public_html/suitecrm7/cache/smarty/templates_c/%%85^852^85294558%%get_form_header.tpl.php on line 23, referer: http://suitecrm7.<omitted_URL>:189/index.php?module=ProspectLists&action=Popup&query=true&list_type=test&mode=single&create=true&metadata=undefined&field_to_name[]=name
It appears the SQL database was not set right, I ran a command and it fixed it. Directory permissions and ownership are correct, but the install docs do not provide much help. Found it all on the internet. All is working now. Noted everything to get this working. Took a while.
This seems to happen in MySQL’s ‘sql_mode’ setting contains STRICT_TRANS_TABLES. The following steps fixed this issue for me:
Check your current sql_mode setting. In mysql client:
SELECT @@GLOBAL.sql_mode
You will see something like this:
±------------------------------------------------------------------------------------------------------------------------------------------+
| @@GLOBAL.sql_mode |
±------------------------------------------------------------------------------------------------------------------------------------------+
| ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |
±------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
Now go to your my.conf file. Usually it’s in /etc/mysql/my.cnf. And add the following lines:
[mysqld]
sql_mode=“”
For example:
[mysqld]
sql_mode=“ONLY_FULL_GROUP_BY,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION”
This is not complete or fully-correct solution, w.r.t., MySQL 5.7 As removing STRICT_TRANS_TABLES is not advisable as per the latest documentations of MySQL.