Potential Issues

Server having different PHP process used for Cron jobs than for files

Problem reported:

  • the CRON job failed and the following error message is received

<b>Fatal error</b>: The file /home/wwwtrk12/public_html/lib/app.inc encoded as type [1/72] cannot be decoded by this version of the ionCube Loader. in <b>Unknown</b> on line <b>0</b>

Solution:

  • The Cron job error happens because the Cron job is executed using a different PHP process than the PHP process used for the files.
  • It seems like the PHP 5.x is used for Cron jobs. This is something that happens on servers with multiple PHP versions and there are 2 options to fix it:

1. enter the full path to the PHP process in the Cron job command

  • This depends from server to server and varies for each webhost, but the complete PHP path may look like "/usr/php/72/usr/bin/" or "/opt/php72/bin/", it also depends on the PHP version used (in this example it is PHP 7.2).
  • When you know the complete server path for PHP you can enter the Cron command like:
` cd /home/wwwtrk12/public_html/; /usr/php/72/usr/bin/php cron-wurfl.php `
  • Depending on what Cron job you have setup, you may need to change the "cron-wurfl.php" part and also make sure you enter the exact path to your PHP process used for the files in this part (example): /usr/php/72/usr/bin/php

2. change the server settings to use the same PHP process for all Cron jobs

  • this also depends from server to server

Timezone error

Problem reported:

  • Cron Jobs are not executed because of a Timezone error (captured in Error Log)

PHP Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone

Solution

  • Define a timezone in the php.ini file in the "date.timezone = " line.
  • This should be the server timezone and it is needed by PHP.

Ad Performance not showing

Problem:

  • Ad Performance section from Stats doesn't appear

Solution:

  • Disable AdBlock - it blocks the Ad Performance data table.

Error about "only_full_group_by" appearing in Error Log page

Problems reported:

If one of the following is happening:

  • The following error message appears on the ErrorLog page Expression ## of SELECT list is not in GROUP BY clause and contains nonaggregated column '.....' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

  • All the charts have stopped working and all you get is the spinning gif animation

  • You get the following error message on the Step 5 install wizard

Install error SQL

  • You get the following message in your CPV Lab Pro instance, on the General Settings section

Settings error SQL

Solution

This error is caused by the MySQL configuration when "only_full_group_by" option is enabled in the "sql_mode" MySQL variable.

  • You need to remove the only_full_group_by option from the "sql_mode" MySQL variable.

  • You can do this from PhpMyAdmin (Variables tab) if your host allows it or you can make a request to your host to make this change.

  • Once this change is made all the reports should load fine.

WARNING

VERY IMPORTANT

You have to remove ONLY the only_full_group_by option from the "sql_mode" MySQL variable, NOT the entire content of this variable (check the image below)

ErroLog OnlyfullgroupBy

“each” function in PHP being deprecated (only for CPV Lab Pro V4.0)

  • “each” function in PHP is deprecated since PHP 7.2 (used in db_core.php)

Problem reported:

  • the following warning appears after installing/upgrading CPV Lab Pro instance:

<b>Deprecated</b>: The each() function is deprecated. This message will be suppressed on further calls in <b>/home/wwwtrk12/public_html/lib/db_core.php</b> on line <b>0</b>

  • All the charts have stopped working and all you get is the spinning gif animation

Solution:

You can solve these issues in 2 ways:

  1. Ask your webhost to make a server change and hide such deprecated PHP warnings and everything should work well.

  2. You can also do this if you have access to the php.ini configuration file where you would need to change the "error_reporting" line to be:

error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED

Last Updated: 6/21/2019, 12:29:56 PM