Bonjour,
J'ai un souci avec le statement en titre - $this->form[$i] instanceof Validator -
Effectivement, j'ai une cascade de classe qui se termine par l'interface Validator
1 2 3 4 5 6 7 8
| interface Validator
{
// function Validate() ;
// function Filled() ;
// function mustFill() ;
// function chkRange() ;
// function stackMessage() ;
} |
Mais qui est vide.....
Le code en sujet est ici:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
$this->cntFilled = 0 ;
$this->cntValid = 0 ;
for($i = 0 ; $i < $this->cntField ; $i++)
=>243 { if ($this->form[$i] instanceof Validator)
if ($this->form[$i]->Filled() )
{ $this->cntFilled++ ;
if ($this->form[$i]->Validate() )
$this->cntValid++ ;
}
else
{ $msg = $this->form[$i]->mustFill() ;
if ($msg)
Stack::stackMessage($msg) ;
}
} |
Si je supprime la ligne 243, j'ai une erreur php....
1 2 3
| [30-Aug-2010 17:37:14] PHP 1. {main}() F:\WebSites\checkform\index.php:0
[30-Aug-2010 17:37:14] PHP Fatal error: Call to a member function Filled() on a non-object in F:\WebSites\checkform\validation\validate.php on line 244
[30-Aug-2010 17:37:14] PHP Stack trace: |
Je dois avouer que je ne comprends pas surtout que Validator est vide de contenu !!!!
J
'oubliais de dire que toutes les classes que forment le tableau form[] implements toutes Validator qui est.... vide de substance.....
Je mets la source complète en pièce attachée.
Je rajoute 2 sources, un des classes qu'on peut trouver dans form[] et le fichier formdef.php qui est la orme HTML qui utilise les classes en question !
J'ajoute le fichier index.php qui est la source de tout.....
Merci car ce n'est pas simple.... je sais
Merci pour toutes explications
Partager