CakePHP Form за пределами контроллера - PullRequest
1 голос
/ 06 мая 2011

У меня есть форма входа в мой заголовок, которая говорит с моим users_controller, но сама форма не в представлении, генерируемом контроллером пользователей, поэтому я получаю две проблемы

1.) Поле пароля не воспринимается как поле пароля и является обычным текстовым полем

2.) При отправке формы она просто перенаправляет на действие входа

Вот код, и он используется ОБА в окне входа в систему и в моем заголовке (так что я знаю, что он работает):

<?php echo $this->Form->create(null, array('id' => 'loginform', 'type' => 'post',
        'url' => array('controller' => 'users', 'action' => 'login'))); ?>

<fieldset id="login">

    <ul class="clearfix">
        <li id="li-username">
            <?php echo $this->Form->input('username', array('label'=>false,'placeholder'=>'Username or email address')); ?>
        </li>
        <li id="li-password">
            <?php echo $this->Form->input('password', array('label'=>false,'placeholder'=>'Password')); ?>
            <span id="iforgot"><?php echo $this->Html->link('?', 
            array('controller' => 'users', 'action' => 'forgotpassword'),  array('title' => 'Forgot your password?')); ?></span>
        </li>
        <li id="li-submit">
            <button type="submit" title="Log in">Log in &#9658;</button>
        </li>
    </ul>

</fieldset>

<?php echo $this->Form->end(); ?>

Ответы [ 2 ]

1 голос
/ 06 мая 2011

Почему не меняется

форма-> создать (нуль, ...

до

форма-> создать ( 'Пользователь' ...

В противном случае изменить

форма-> вход ( 'имя пользователя', ...

до

форма-> вход ( user.username ' ...

1 голос
/ 06 мая 2011
  1. Вы можете использовать type = 'password'

<code>
echo $this->Form->input('password', array('label'=>false, 'type' => 'password', 'placeholder'=>'Password')); 
  1. Вы указали массив ('controller' => 'users',' action '=>' login ') в вашем операторе $ this-> Form-> create ().Таким образом, форма отправляется в «/ users / login»

Если вы не хотите отправлять форму в «/ users / login», вы можете использовать AJAX для входа в систему.

Надеюсь, они ответят на ваши вопросы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...