2014-04-24 3 views
0

Comment puis-je vérifier si le formulaire est validé ou non, et comment puis-je afficher le message d'erreur si le formulaire est pas selon les validationsComment vérifier la validation du formulaire dans le contrôleur dans Zend Framework 1.12

En ZF2 nous écrire comme

userController 

$request = $this->getRequest(); 
$form = new Form_LoginForm(); 
if($request->isPost()){ 
    if($form->isvalid($this->_request->getPost())){ 
     $authAdapter = $this->getAuthAdapter(); 
     $username = 'john'; 
     $password = '123'; 
     $authAdapter->setIdentity($email) 
        ->setCredential($password); 
     $auth = Zend_Auth::getInstance(); 
     $result = $auth->authenticate($authAdapter); 
     if($result->isvalid()){ 
      $identity = $authAdapter->getResultRowObject(); 
      $authStorage = $auth->getStorage(); 
      $authStorage->write($identity); 
      $this->_helper->redirector(register/user); 
      echo 'valid'; 
     } else { 
      $this->view->errorMessage = "User name or password is incorrect"; 
     } 
    } 
} 

le code ci-dessus est en zend framework2, j'ai besoin du code Zend framework 1.12. Comment puis-je obtenir la forme de login.phtml dans UserController et comment écrire le code pour vérifier la validation comme dans la ligne 4 qui est écrit dans zend framework2

Ma forme login.phtml est

<form action="<?php echo $this->url(array('controller'=>'user','action'=>'login'), 
    'default',true);?>" method="post"> 
    Email: <input type="text" name="user_email" type="email"   oninvalid="setCustomValidity('Plz enter valid email ')"  onchange="try{setCustomValidity('')}catch(e){}" required /> 
    Password: <input type="password" name="password" required /> 
    <input type="submit" name="submit" value="SUBMIT" /> 
    </form> 
+0

Vous pouvez voir le [exemple] (http://framework.zend.com/manual/1.12/en/learning.multiuser.authentication.html) dans la documentation du ZF1.12 – doydoy44

+0

Une autre [exemple] (http://satish-zendframe.blogspot.fr/20 11/01/creation-login-forme-using-zend.html) – doydoy44

+0

thanq, il était très aidant @ doddod44 – Rajitha

Répondre

0

Que diriez-vous quelque chose comme ça ....

$form   = new Form_LoginForm(); 

if ($this->getRequest()->isPost()) 
{ 
    if ($form->isValid($_POST)) 
    { 
     $formData  = $this->_getFormData(); 
     $authAdapter = $this->_getAuthAdapter($formData); 
     $auth   = Zend_Auth::getInstance(); 
     $result   = $auth->authenticate($authAdapter); 

     /** 
     * Authentication failed 
     */ 
     if (!$result->isValid()) 
     { 
      switch ($result->getCode()) 
      { 
       // Username doesn't exist 
       case Zend_Auth_Result::FAILURE_IDENTITY_NOT_FOUND : $yourLogic; 
                     break; 
       // Username and Password combination was incorrect 
       case Zend_Auth_Result::FAILURE_CREDENTIAL_INVALID : $yourLogic; 
                     break; 
       // General error message 
       default : $yourLogic; 
      } 
     } 
     /** 
     * Authentication success 
     */ 
     else 
     { 
      // Store the identity as an object where the password column has been omitted 
      $data = $authAdapter->getResultRowObject(null, 'password'); 
     } 
    } 
} 
Questions connexes