AJAX vyhledávání a nefunkčnost při URL s parametry
- Mysteria
- Člen | 797
Zdravím, potřeboval bych poradit, jak vyřešit následující problém.
Mám web, na které mám AJAXové vyhledávání pomocí Replikátoru a formuláře ve stylu: Vyber databázový sloupec, vyber podmínku a zadej data. Takže uživatel si může filtrovat podle čeho chce. Všechno pěkně funguje, ale teď jsem narazil na problém – pokud někdo použije přímý odkaz na vyhledávání, který je třeba ve tvaru
web.cz?where[0][col]=online&where[0][mod]=%3D&where[0][val]=1&order[0]=rank&limit[lim]=10&limit[off]=0
tak pak vyhledávání nefunguje. Zjistil jsem, že problém je v tom, že v action metodě
public function actionList(array $where, array $order, array $limit) { ... }
když je URL prázdná (tzn. bez ? a dalších parametrů), tak se do
proměnných dosadí data z toho formuláře.
Pokud ale URL obsahuje ty dané parametry, tak se dá přednost těm z URL
před těmi z formuláře. Když si ale normálně dumpnu $_GET, tak tam jsou
parametry z URL, když $_POST tak parametry z formuláře. Otázkou je, jak to
udělat tak, aby i při parametrech v URL se použili ty z formuláře?
Ano, mohl bych to nějak nepěkně udělat tímhle stylem, ale rád bych se vyvaroval takovýhle věcí pokud to nebude nezbytně nutné. :)
$where = isset($_POST['where']) ? $_POST['where'] : $where;
$order = isset($_POST['order']) ? $_POST['order'] : $order;