2013-03-14 4 views
1

J'ai installé un thème bootstrap pour mon application yii à afficher sur sa page de connexion. Comment transmettre les informations saisies dans ces formulaires aux variables login.php?Yii bootstrap page de connexion personnalisée

De même, comment puis-je faire le bouton "Connexion" dans le thème pour appeler le bouton "Connexion" dans le login.php?

Ce sont les formes dans le thème bootstrap:

  <div class="clearfix"> 
      <input type="text" placeholder="username"> 
      </div> 

      <div class="clearfix"> 
      <input type="password" placeholder="password"> 
      </div> 

      <button class="btn primary" type="submit">Sign in</button> 

Ce sont les formes que yu afficherait avec son thème par défaut dans login.php:

<div class="row"> 
    <?php echo $form->labelEx($model,'username'); ?> 
    <?php echo $form->textField($model,'username'); ?> 
    <?php echo $form->error($model,'username'); ?> 
</div> 

<div class="row"> 
    <?php echo $form->labelEx($model,'password'); ?> 
    <?php echo $form->passwordField($model,'password'); ?> 
    <?php echo $form->error($model,'password'); ?> 
</div> 

<div class="row buttons"> 
    <?php echo CHtml::submitButton('Login'); ?> 
</div> 

Répondre

0
<?php $form=$this->beginWidget('CActiveForm', array(
        'action'=>array('login.php') 
       )); ?> 

Normalement Yii appelle une action sur un contrôleur. Connaissez-vous les bases de Yii?

1

pour les meilleures pratiques de Yii. Ne pas utiliser le fichier login.php utiliser à la place contrôleur/action et dans cette action définissent votre logique de connexion comme ceci: Connexion Voir fichier

<?php $form=$this->beginWidget('CActiveForm', array(
     'id'=>'login-form', 
     'enableClientValidation'=>true, 
     'clientOptions'=>array(
      'validateOnSubmit'=>true, 
     ), 
     )); ?> 
<div class="row"> 
    <?php echo $form->labelEx($model,'username'); ?> 
    <?php echo $form->textField($model,'username'); ?> 
    <?php echo $form->error($model,'username'); ?> 
</div> 

<div class="row"> 
    <?php echo $form->labelEx($model,'password'); ?> 
    <?php echo $form->passwordField($model,'password'); ?> 
    <?php echo $form->error($model,'password'); ?> 
</div> 
    <div class="row buttons"> 
    <?php echo CHtml::submitButton('Login'); ?> 
</div> 

Et ceci est votre action du contrôleur:

public function actionLogin() 
{ 
    $model=new LoginForm; 
    if(isset($_POST['LoginForm'])) 
    { 
      $model->attributes=$_POST['LoginForm']; 
      if($model->validate() && $model->login()){ 
      //Your Logic// 
      } 
     $this->render('login',array('model'=>$model)); 
} 
Questions connexes