Page 1 of 1
Strange behavior of Yii, when the code is encoded ionCube
#1
Posted 03 August 2012 - 12:39 PM
Hi!
When the project is encoded using ioncube works incorrectly binding parameters to the action ($ var1 = 22, $ var2 = null) - if you call a controller action with no parameters, then an error is "invalid request".
Encoding is carried out the project with default settings ioncube. Maybe someone knows, which is why this is happening?
When the project is encoded using ioncube works incorrectly binding parameters to the action ($ var1 = 22, $ var2 = null) - if you call a controller action with no parameters, then an error is "invalid request".
Encoding is carried out the project with default settings ioncube. Maybe someone knows, which is why this is happening?
#2
Posted 03 August 2012 - 02:27 PM
I guess that has something to do with reflection + ionCube issues. I've personally never encoded my projects so can't be sure.
Try using $_GET['param'] instead of action's $param and remove parameter itself.
Try using $_GET['param'] instead of action's $param and remove parameter itself.
#3
Posted 03 August 2012 - 04:21 PM
samdark, on 03 August 2012 - 02:27 PM, said:
I guess that has something to do with reflection + ionCube issues. I've personally never encoded my projects so can't be sure.
Try using $_GET['param'] instead of action's $param and remove parameter itself.
Try using $_GET['param'] instead of action's $param and remove parameter itself.
I checked, this problem occurs only if the ReflectionParameter()->isDefaultValueAvailable() is used from an external unencrypted code that is out of the framework.
I also coded framework and the problem disappeared. A change in the $_GET the whole project really do not want
#4
Posted 05 August 2012 - 09:21 AM
Stepan Selyuk, on 03 August 2012 - 04:21 PM, said:
I checked, this problem occurs only if the ReflectionParameter()->isDefaultValueAvailable() is used from an external unencrypted code that is out of the framework.
I also coded framework and the problem disappeared.
I also coded framework and the problem disappeared.
This is related to how the PHP engine implements default parameter reflection. There's no meta data holding details of default parameters for reflection purposes, so to obtain default parameter details, the PHP engine has to resort to what is arguably a kludge of scanning the compiled bytecode to find the necessary information from the v'machine instructions related to parameter passing. ionCube compiled bytecode is protected, so the regular PHP engine bytecode searching fails when it encounters ionCube compiled code due to it not being understood. The ionCube Loader for processing encoded files contains an execution engine designed to ensure that the reflection operations on default values *are* able to work on encoded files, which is why the behaviour works as expected when the calling code was encoded.
--
ionCube
#6
Posted 20 September 2012 - 06:47 AM
Stepan Selyuk, on 03 August 2012 - 04:21 PM, said:
I checked, this problem occurs only if the ReflectionParameter()->isDefaultValueAvailable() is used from an external unencrypted code that is out of the framework.
I also coded framework and the problem disappeared. A change in the $_GET the whole project really do not want
I also coded framework and the problem disappeared. A change in the $_GET the whole project really do not want
I've the same problem. Can you explain more about your solution?
Php web deleloper
#8
Posted 20 September 2012 - 08:37 AM
Stepan Selyuk, on 20 September 2012 - 06:54 AM, said:
Just encode to ioncube framework folder too.
Thanks Stepan. It works.
Php web deleloper
Share this topic:
Page 1 of 1

Help













