2013-03-14 212 views
1

我爲我的yii應用程序安裝了一個引導主題以顯示在其登錄頁面上。 如何將這些表單中輸入的信息傳遞給login.php中的變量?Yii bootstrap自定義登錄頁面

另外,如何使主題中的「登錄」按鈕調用login.php中的「登錄」按鈕?

這些都是在引導主題形式:

  <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> 

這些都是警予將於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> 

回答

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

通常Yii的要求對控制器的操作。你知道Yii的基礎知識嗎?

1

Yii最佳實踐。不使用的login.php文件,而不是使用控制器/行動,並在行動定義登錄邏輯是這樣的: 登錄查看文件

<?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> 

這是你的控制器動作:

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)); 
}