ASE Home Page Products Download Purchase Support About ASE
ChartDirector Support
Forum HomeForum Home   SearchSearch

Message ListMessage List     Post MessagePost Message

  error with upgrade from Chart Director v.6x to v.7x with PHP upgrade from 7.3.2 to 7.4.23
Posted by Stacy on Sep-30-2021 04:41
Hi Peter,

We are seeing errors in our error log referencing deprecated PHP code with the following:

PHP Deprecated:  Array and string offset access syntax with curly braces is deprecated in E:\PHP Deprecated:  Array and string offset access syntax with curly braces is deprecated in E:\...\...\...\...\...\...\ChartDirector\lib\phpchartdir.php

for lines:
73
85
87
95
98
106
109

Our charts that were working on v.6 are no longer working and we were wondering what we are missing.

It appeared the license keys should still work between v.6 and v.7, but if we need a new set, please advise.

Thank you in advance for your time.

Stacy

  Re: error with upgrade from Chart Director v.6x to v.7x with PHP upgrade from 7.3.2 to 7.4.23
Posted by Peter Kwan on Sep-30-2021 21:28
Hi Stacy,

It is likely because your code is using an older version of "phpchartdir.php", which is not compatible with your PHP 7 version.

When you upgrade from ChartDirector 6 to 7, you would need to upgrade the DLLs (including modifying the "php.ini" to load the new DLLs), and also the "phpchartdir.php". Sometimes people may copy the "phpchartdir.php" to their own directory. When they upgrade the DLLs, they forget about the "phpchartdir.php" copy in their own directory. As a result, the code may be using an older copy of "phpchartdir.php" with the new DLLs.

Please make sure your "E:..................ChartDirectorlibphpchartdir.php" comes from the ChartDirector version 7 that you have upgraded to.

The PHP 7.4 is not compatible with some earlier versions of PHP. That means some code that works in earlier versions of PHP may not work in PHP 7.4 or may produce warning messages in PHP 7.4. The error you see is due to this issue. The updated phpchartdir.php employs syntax that acceptable to PHP 7.4.

Regards
Peter Kwan

  Re: error with upgrade from Chart Director v.6x to v.7x with PHP upgrade from 7.3.2 to 7.4.23
Posted by Stacy on Oct-01-2021 04:07
Thank you Peter for your response!

We are no longer getting the error messages, however, we are still getting the yellow unregistered license banner.

Do we need a new license?  The chartdir.lic is saved in the same folder as the chartdir.dll, as before.

This will be for a Windows 2016 development server running PHP 7.4.23 (unpgraded from 7.3.2).  We are also planning on doing another upgrade to PHP 7.4.24 next week.

Please advise!
Thank you in advance for your time
Stacy

  Re: error with upgrade from Chart Director v.6x to v.7x with PHP upgrade from 7.3.2 to 7.4.23
Posted by Peter Kwan on Oct-01-2021 12:58
Hi Stacy,

If your license is a ChartDirector version 6 license (that is, it is purchased on Jun 15, 2012 - the date that ChartDirector 6.0 was released), it should work with ChartDirector 7.x.

Note that a license that works with ChartDirector version 6 can be a ChartDirector version 6 license or a ChartDirector version 5 license. Every ChartDirector license will work with the version at the time of purchase, as well as the next major version.

If you are not sure of the version of your ChartDirector license, you can email the "chartdir.lic" to me (pkwan@advsofteng.net) to check. You are also refer to the license diagnostic page below. It mentions a "cdinfo.php" script that can display the directories that ChartDirector has searched for the license file, and why the license cannot be loaded.

https://www.advsofteng.com/license_diag.html

For ChartDirector 7.0, we now suggest that the license file to be put in the operating system directory (normally "c:windows") and set up to be readable by everyone. Putting the license file in the same directory as the active "chartdir.dll" will also work. From experience, sometimes people may have multiple copies of "chartdir.dll" in their machines (eg. one in the original distribution directory ChartDirector/lib, and one in the PHP extension directory), and it may be confusing which "chartdir.dll" is the one actually being used. Using the operating system directory can avoid this problem.

If you confirm the license can only work up to ChartDirector 6.x, the cost to upgrade for one version is 25% of the full price of the license. The exact cost depends on your license type. See:

https://www.advsofteng.com/purchase_upg.html

Regards
Peter Kwan