Bonjour a tous, j'ai suivis les tutoriels sur la poo en php mais j'ai un petit soucis au niveau de mon autoloader..

Voici ma page Identification.php :

    require('class/Autoloader.php');
    $validator = new Validator($_POST);

    if(isset($_POST['inputLoginSubmit'])):

        //Vérification du formulaire de connexion

    elseif(isset($_POST['inputRegisterSubmit'])):

        //$validate->isAlpha('inputLoginEmail','');

    endif;

Ma page Autoloader.php ( Dossier class )

    class Autoloader{

        static function register(){
            spl_autoload_register(array(__CLASS__, 'autoload'));
        }

        static function autoload($class){
            require "$class.php";
        }

    }

et la page Validator.php ( Dossier class )

    class Validator{

        private $data;
        private $error = [];

        public function __construct($data){
            $this->data = $data;
        }

        private function getField($field){
            if(!isset($this->data[$field])){
                return null;
            }
            return $this->data[$field];
        }

        public function isAlpha($field,$error){
            if(!preg_match('/^[a-zA-Z0-9_]+$/', $this->getField($field))){
                $this->errors[$field] = $error;
            }
        }

    }

Fatal error: Class 'Validator' not found in C:\wamp\www\MineCrown\pages\identification.php on line 4

Merci a tous d'avance de votre aide et bonne fin de journée a vous :)

2 réponses


tleb
Réponse acceptée

Salut,

Tu n'as pas appellé Autoloader::register(), donc PHP ne connait pas l'autoloader.

Par contre, je te déconseillerai de recréer la roue. Composer a un autoloader très puissant intégré. Le tuto de Grafikart.

DylanVsn
Auteur

D'accord, merci de ta réponse je vais voir ca de suite :)