Changed at 12 March 10 / 10:09
Hey! In verschillende class.*fieldType*.php bestanden is een statische aanroep te vinden naar verschillende Validator methods. Dit veroorzaakt echter een Runtime Notice:
Error : Runtime Notice (2048)
Script : ../formhandler/fields/class.PassField.php on line 131
Date : 2010-03-12 09:59u
Message : Non-static method Validator::IsPassword() should not be called
statically, assuming $this from incompatible context
welke configuratie (versie PHP en errorhandling) gebruik je om deze notices zichtbaar te krijgen?
Wij krijgen ze niet met Error_reporing( E_ALL|E_STRICT );
Momenteel gebruik ik PHP 5.3.0 op Apache 2.2.11 met error_reporting(E_ALL). De volgende runtime notices komen tevens naar voren:
Error : Runtime Notice (2048)
Script : C:\projects\crm\lib\formhandler\yadal\class.MySQL.php on line 514
Date : 2010-03-17 16:36000000
Message : Declaration of MySQL::getFieldTypes() should be compatible with that of Yadal::getFieldTypes()
Error : Runtime Notice (2048)
Script : C:\projects\crm\lib\formhandler\yadal\class.MySQL.php on line 514
Date : 2010-03-17 16:36000000
Message : Declaration of MySQL::getNotNullFields() should be compatible with that of Yadal::getNotNullFields()
Error : Runtime Notice (2048)
Script : C:\projects\crm\lib\formhandler\yadal\class.MySQL.php on line 514
Date : 2010-03-17 16:36000000
Message : Declaration of MySQL::getUniqueFields() should be compatible with that of Yadal::getUniqueFields()
Error : Runtime Notice (2048)
Script : C:\projects\crm\lib\formhandler\yadal\class.MySQL.php on line 514
Date : 2010-03-17 16:36000000
Message : Declaration of MySQL::getPrKeys() should be compatible with that of Yadal::getPrKeys()
Error : Runtime Notice (2048)
Script : C:\projects\crm\lib\formhandler\yadal\class.MySQL.php on line 514
Date : 2010-03-17 16:36000000
Message : Declaration of MySQL::recordCount() should be compatible with that of Yadal::recordCount()
Error : Runtime Notice (2048)
Script : C:\projects\crm\lib\formhandler\yadal\class.MySQL.php on line 514
Date : 2010-03-17 16:36000000
Message : Declaration of MySQL::getFieldNames() should be compatible with that of Yadal::getFieldNames()
Error : Runtime Notice (2048)
Script : C:\projects\crm\lib\formhandler\yadal\class.MySQL.php on line 514
Date : 2010-03-17 16:36000000
Message : Declaration of MySQL::escapeString() should be compatible with that of Yadal::escapeString()
Error : Runtime Notice (2048)
Script : C:\projects\crm\lib\formhandler\yadal\class.MySQL.php on line 514
Date : 2010-03-17 16:36000000
Message : Declaration of MySQL::getRecord() should be compatible with that of Yadal::getRecord()
Error : Runtime Notice (2048)
Script : C:\projects\crm\lib\formhandler\yadal\class.MySQL.php on line 514
Date : 2010-03-17 16:36000000
Message : Declaration of MySQL::query() should be compatible with that of Yadal::query()
Er moet ergens iets afwijkends zitten in je installatie.
Heb je een eigen error_handler?
De meldingen zouden alleen met E_STRICT moeten komen, al kan ik ze daar ook in PHP 5.3.0 niet te voorschijn krijgen. ( en dus niet controleren of ik iets oplos bij aanpassingen)
Ik gebruik inderdaad een eigen error handler. De fouten komen niet naar voren bij PHP versie bijv. 5.2.9-2, maar wel bij bijv. 5.3.0. Het zijn dus PHP-versie-afhankelijke notices.
Het heeft even geduurd; maar het is me zojuist gelukt een beknopt script te schrijven waarmee het probleem gereconstrueerd kan worden. Zojuist heb ik hem naar je gemaild. Ik hoop dat je er wat mee kunt.