Bonjour je suis arriver jusqu'au tuto number five et malgrer les notification marquer en bas de l'ecran ver la fin de la video beh ... je patoge dans la semoule donc je post car j'arrive pas a trouver comment réparer cette erreur -_- ...

Notice: Undefined variable: validate in C:\wamp\www\model\Post.php on line 6

avec sa copine =>

Fatal error: Cannot access empty property in C:\wamp\www\model\Post.php on line 6

et avec le code fautif ,

<?php
class Post extends Model{
    function validates($data){
        $errors = array();
        foreach($this->$validate as $k=>$v){
                if(!isset($data->$k)){
                    $errors$k] = $v'message'];
                }else{
                    if($v'rule'] == 'notEmpty'){
                        if(empty($data->$k)){
                            $errors$k] = $v'message'];
                        }
                    }elseif(!preg_match('/^'.$v'rule'].'$/',$data->$k)){
                        $errors$k] = $v'message'];
                    }
                }
        }
        $this->errors = $errors;
        if(isset($this->Form)){
            $this->Form->errors = $errors;
        }
        if(empty($errors)){
            return true;
        }
        return false;
    }
    var $validate = array(
        'name' => array(
            'rule' => 'notEmpty',
            'message' => 'Vous devez préciser un titre'
        ),
        'slug' => array(
            'rule' => '([a-z0-9\-]+)',
            'message' => "L'url n'est pas valide"
        )
    );

}

J'ai essayer de le mettre dans le model comme tu la marquer j'ai meme essayer de renommer se qui foirait rien , nada , ha si ... mes poche commencent a revenir grace a tes tuto ;)

2 réponses


Grafikart
Réponse acceptée

foreach($this->validate :)

serda
Auteur

mdr tellement simple mais merci de m'avoir aider Grafikart ;)