2017-05-15 3 views
0

J'ai un champ de ville. qui permet tous les caractères. J'ai écrit une règle qui n'est pas autorisée à entrer plus de 50 caractères. Niveau de l'interface utilisateur, cela fonctionne parfaitement. Mais php jette une erreur de longueur maximale même si j'ai entré moins de 50 caractères. J'ai trouvé le problème mais je ne sais pas comment le résoudre. Pour un exemple, si je saisis des caractères spatiaux, il les convertit en entités html avant la validation. par exemple. & est converti en &. si la propriété de longueur fonctionne mal. S'il vous plaît, aidez. Merci d'avance.Yii - la validation de la longueur du champ de texte fonctionne mal quand j'entre les caractères spatiaux

Input: Karur 1##@[email protected]@[email protected]#@#@#&&&&&&& 
During Validation: Karur 1##@[email protected]@[email protected]#@#@#&&&&&&& 
+0

[Selon PHP] (http://php.net/manual/en/ function.htmlspecialchars.php) –

+1

S'il vous plaît montrer votre contrôleur et le code de modèle afin que nous puissions vous aider – Chux

Répondre

1

Vous pouvez définir des règles dans le modèle pour autoriser uniquement les caractères. il n'a pas le droit de symbole,

Je pense que votre question est liée à cette réponse ....

array(
      'username', 
      'match', 'not' => true, 'pattern' => '/[^a-zA-Z_-]/', 
      'message' => 'Invalid characters in username.', 
     ),