@Oklick

Как из элемента формы достать изображение captcha отдельно от input в zf2?

Доброго времени суток.
При разработке сайта, возникла следующая проблема:
при использовании элемента формы "captcha" (капча стандартная из zf2)
<div><?php
echo $this->formElement($registerForm->get('captcha'));
?></div>

Вставляется код целиком (т.е. картинка вместе с input в один div), но мне нужно разделить картинку капчи с инпутом в разные div.

Вот пример, как вставляется сейчас:
<div>
    <img width="120" height="50" alt="" src="/images/captcha/054fbf1c546eb312aa0dc72980e573b8.png">
    <input name="captcha[id]" type="hidden" value="054fbf1c546eb312aa0dc72980e573b8">
    <input name="captcha[input]" type="text">
</div>


Мне же нужно что то вроде этого:
<div>
    <img width="120" height="50" alt="" src="/images/captcha/054fbf1c546eb312aa0dc72980e573b8.png">
</div>
<div>
    <input name="captcha[id]" type="hidden" value="054fbf1c546eb312aa0dc72980e573b8">
    <input name="captcha[input]" type="text">
</div>


Можно ли как-нибудь, при помощи данного обращения:
$this->formElement($registerForm->get('captcha'));
Вытащить отдельно картинку и отдельно инпут?

Заранее благодарен.
  • Вопрос задан
  • 253 просмотра
Решения вопроса 1
27cm
@27cm
TODO: Написать статус
Обратите внимание на опцию separator, которая есть в базовом классе всех помощников представления для капч. Нужно задать ей значение '</div><div>'.

<div>
<?php
    $captcha = $registerForm->get('captcha');
    echo $this->formCaptchaImage()->setSeparator('</div><div>')->render($captcha);
?>
</div>
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы