Po odeslání formuláře BadRequestException
- bluray
- Člen | 178
Dobrý den, po odeslání formuláře se mi vyhodí BadRequestException. nevím čím to může být.
protected function createComponentSignInForm(){
$form = new Nette\Application\UI\Form();
$form->addText("email")->setAttribute("placeholder", "Email")->setRequired();
$form->addPassword("password")->setAttribute("placeholder", "Heslo")->setRequired();
$form->addSubmit("send", "Přihlásit");
$form->onSuccess[] = $this->signInSucceeded;
return $form;
}
{form signInForm class => 'form-vertical login-form'}
<h3 class="form-title">Přihlášení do systému</h3>
<div class="alert alert-error hide">
<button class="close" data-dismiss="alert"></button>
<span>Enter any username and passowrd.</span>
</div>
<div class="control-group">
{label email class => 'control-label visible-ie8 visible-ie9' /}
<div class="controls">
<div class="input-icon left">
<i class="icon-user"></i>
{input email class => 'm-wrap placeholder-no-fix'}
</div>
</div>
</div>
<div class="control-group">
{label password class => 'control-label visible-ie8 visible-ie9' /}
<div class="controls">
<div class="input-icon left">
<i class="icon-lock"></i>
{input password class => 'm-wrap placeholder-no-fix'}
</div>
</div>
</div>
<div class="form-actions">
{input send class=>'btn green pull-right'}
</div>
{/form}
Děkuji za pomoc
- bluray
- Člen | 178
Právě že ne, takhle vypadá začátek toho presenteru:
class SignPresenter extends Nette\Application\UI\Presenter
{
public function startup(){
parent::startup();
$this->setLayout("loginLayout");
}
public function renderDefault(){
}
protected function createComponentSignInForm(){
}
A na router jsem nesahal, používám ten ze sandboxu.
Editoval bluray (20. 6. 2015 20:31)
- jiri.pudil
- Nette Blogger | 1032
Nebylo by od věci aspoň napsat, co ta výjimka obsahuje za zprávu, nebo někam rovnou nahrát celou laděnku, z toho se dá většinou vyčíst víc než z křišťálové koule :)
- bluray
- Člen | 178
píše to No route for HTTP request. tady je ta výjimka:
http://uloz.to/…ception-html
- David Matějka
- Moderator | 6445
ta adresa s index.html
na konci je divna. To uz obsahuje
action
u formu? myslim, ze ne.. asi nekde dochazi k presmerovani,
musis zjistit kde.
- bluray
- Člen | 178
problém je zřejmě v šabloně. ted jsem napsal formulář úplně znovu a když tam mám jenom {control form} tak je to v pohodě. ale když tam dám následující kod tak to prostě nefunguje.
{form pokusForm class => 'form-vertical login-form'}
<h3 class="form-title">Přihlášení do systému</h3>
<div class="alert alert-error hide">
<button class="close" data-dismiss="alert"></button>
<span>Enter any username and passowrd.</span>
</div>
<div class="control-group">
{label email class => 'control-label visible-ie8 visible-ie9' /}
<div class="controls">
<div class="input-icon left">
<i class="icon-user"></i>
{input email class => 'm-wrap placeholder-no-fix'}
</div>
</div>
</div>
<div class="control-group">
{label password class => 'control-label visible-ie8 visible-ie9' /}
<div class="controls">
<div class="input-icon left">
<i class="icon-lock"></i>
{input password class => 'm-wrap placeholder-no-fix'}
</div>
</div>
</div>
<div class="form-actions">
{input send class=>'btn green pull-right'}
</div>
{/form}
- bluray
- Člen | 178
Zjednodušil jsem to jak to šlo. tohle se vygeneruje:
<form action="/sirius_old/www/sign/" method="post" id="frm-pokusForm">
<table>
<tr>
<td><input type="text" name="email" placeholder="Email" id="frm-pokusForm-email" required data-nette-rules='[{"op":":filled","msg":"This field is required."}]' value="aaa"></td>
</tr>
<tr><td><input type="submit" name="send" value="Přihlásit"></td></tr>
</table>
<input type="hidden" name="do" value="pokusForm-submit"></form>
a tohle je kod:
{block content}
{form pokusForm}
<table>
<tr>
<td>{input email}</td>
</tr>
<tr><td>{input send}</td></tr>
</table>
{/form}
{/block}