CakePHP - $validate n'affiche rien
Résolu
le_joker_fou
Messages postés
765
Date d'inscription
Statut
Membre
Dernière intervention
-
le_joker_fou Messages postés 765 Date d'inscription Statut Membre Dernière intervention -
le_joker_fou Messages postés 765 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Problème :
Quand un visiteur valide le formulaire je désire vérifier qu'il a bien saisi un nom et prénom. Seulement lors de la validation, avec erreur, aucune erreur ne s'affiche.
Code Model :
var $validate = array(
'name' => array(
'rule' => array('minLength', 8),
'message' => 'Les noms d\'utilisateur doivent avoir au moins 8 caractères.'
),
'prenom' => array(
'rule' => array('minLength', 8),
'message' => 'Les prénoms d\'utilisateur doivent avoir au moins 8 caractères.'
)
);
Code Controller :
function identification(){
if(isset($this->data)){
$resultat = $this->Client->save( $this->data );
if ($resultat) {
$this->flash('Le client vient d\'être ajouté', array('controller'=> 'Clients',
'action'=>'identification'));
}
}
}
Code vue :
echo $form->input('name',array('label'=>'Nom :'));
echo $form->input('prenom',array('label'=>'Prénom :'));
Observation :
Je remarque que quand je valide le formulaire, l'espace entre mes deux champs augmente comme pour laisser de la place à un message, mais rien ne s'affiche.
Merci de votre aide pour résoudre ce problème.
Problème :
Quand un visiteur valide le formulaire je désire vérifier qu'il a bien saisi un nom et prénom. Seulement lors de la validation, avec erreur, aucune erreur ne s'affiche.
Code Model :
var $validate = array(
'name' => array(
'rule' => array('minLength', 8),
'message' => 'Les noms d\'utilisateur doivent avoir au moins 8 caractères.'
),
'prenom' => array(
'rule' => array('minLength', 8),
'message' => 'Les prénoms d\'utilisateur doivent avoir au moins 8 caractères.'
)
);
Code Controller :
function identification(){
if(isset($this->data)){
$resultat = $this->Client->save( $this->data );
if ($resultat) {
$this->flash('Le client vient d\'être ajouté', array('controller'=> 'Clients',
'action'=>'identification'));
}
}
}
Code vue :
echo $form->input('name',array('label'=>'Nom :'));
echo $form->input('prenom',array('label'=>'Prénom :'));
Observation :
Je remarque que quand je valide le formulaire, l'espace entre mes deux champs augmente comme pour laisser de la place à un message, mais rien ne s'affiche.
Merci de votre aide pour résoudre ce problème.
A voir également:
- CakePHP - $validate n'affiche rien
- Le clavier de mon telephone ne s'affiche plus - Guide
- Profil non affiché marketplace - Forum Facebook
- Ma clé usb ne s'affiche pas - Guide
- Réparer lecteur cd qui affiche no disc - Forum Enceintes / HiFi
- Faites en sorte que la cellule a1 affiche exactement ce qui est montré sur cette image. quel mot apparaît en b1 ? - Forum Excel
1 réponse
Bonjour,
Je fais de la façon suivante :
Dans les deux cas se sont les codes du controlleur
Si non tu peux tester comme suit :
Bonne journée
Si résolu, n'oublie pas de cliquer !
Je fais de la façon suivante :
Dans les deux cas se sont les codes du controlleur
function identification(){ if (empty($this->data)==false) { $resultat = $this->Client->save( $this->data ); if ($resultat) { $this->flash('Le client vient d\'être ajouté', array('controller'=> 'clients', 'action'=>'identification')); } } }
Si non tu peux tester comme suit :
function identification(){ $this->Client->set($this->data); if ($this->User->validates()) { $resultat = $this->Client->save( $this->data ); if ($resultat) { $this->flash('Le client vient d\'être ajouté', array('controller'=> 'clients', 'action'=>'identification')); } } }
Bonne journée
Si résolu, n'oublie pas de cliquer !
J'avais omis de dire que le problème était résolu. en fait c'est les accents qui posé problème.
j'ai pas trouver des solution moi :((