嘿伙计们我正在尝试使用Nette Framework在数据库中编写简单搜索,我的Presenter(控制器)看起来像这样:
<?php
public function searchsucceeded($searchword)
{
$selection = $this->database->findAll->select('*')->where("name LIKE ?", "%$searchword%");
return $selection;
}
protected function createComponentsearchForm()
{
$form = new Form;
$form->addText('name', 'Vyhladať ban, vložte nick zabanovaného hráča')
->setRequired('Vyhladať ban, vložte nick zabanovaného hráča');
$form->addSubmit('search', 'Hľadať')
->setAttribute('class', 'default')
->onSuccess[] = $this->searchsucceeded;
}
?>
说实话我甚至不能100%确定如果它是正确的,但它应该是,我需要的是添加它让表格使用此功能当我按下SEARCH按钮而不是重定向到旧的搜索脚本。
我的搜索形式:
<form action="index.php" method="POST">
<input type="text" style="margin-top:10px;" placeholder="Vyhľadať ban... (Zadajte nick hráča)" name="nickS" class="span10" required="required">
<input type="submit" value="Hľadať" name="sSubmit" class="btn btn-primary span2">
</form>
我在OOP和Nette中也是绝对新的,所以这个问题总是非常多,我知道如何在没有OOP的情况下做到这一点,但我更喜欢这个选项!
那么有人可以帮助我吗?
答案 0 :(得分:0)
我建议您在searchsucceeded
方法中使用重定向。这更像是商业外观而非编程推荐。
您可能会在网站上的许多页面上使用搜索表单,而不是仅在一种类型的页面上显示结果。对于SEO来说,也可以在独特的页面上显示结果,例如test.com/s /.