[英]Yii bootstrap custom login page
我為yii應用程序安裝了引導主題,該主題顯示在其登錄頁面上。 如何將以這些形式輸入的信息傳遞給login.php
的變量?
另外,如何使主題中的“登錄”按鈕調用login.php
的“登錄”按鈕?
這些是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>
這些是yii將在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>
最佳實踐。 不要使用login.php文件,而要使用controller / action,並且在該動作中定義您的登錄邏輯,如下所示:Login View file
<?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));
}
<?php $form=$this->beginWidget('CActiveForm', array(
'action'=>array('login.php')
)); ?>
通常,Yii在控制器上調用一個動作。 您知道Yii的基礎知識嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.