1

yii アプリケーションのログイン ページに表示されるように、ブートストラップ テーマをインストールしました。これらのフォームに入力された情報を の変数に渡すにはどうすればよいlogin.phpですか?

また、テーマの「サインイン」ボタンを作成して、テーマの「サインイン」ボタンを呼び出すにはどうすればよい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>

これらは、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>
4

2 に答える 2

1

Yii のベスト プラクティス。代わりにコントローラー/アクションを使用し、そのアクションで次のようにログインロジックを定義します: ログインビューファイル

<?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));
 }
于 2013-03-15T06:17:37.040 に答える
0
  <?php $form=$this->beginWidget('CActiveForm', array(
                    'action'=>array('login.php')
                )); ?>

通常、Yii はコントローラーでアクションを呼び出します。Yiiの基本を知っていますか?

于 2013-03-14T23:52:49.230 に答える