NDB, WHERE a generovani filtru

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
MW
Člen | 626
+
0
-

Zdravím a prosím o radu:

Tvořím si u gridu filtr:

$filters = array();
        foreach ($filter as $k => $v) {
            if ($k == 'id') {
                $filters[$k] = $v;
                } elseif ($k == 'branches_id') {
                $filters[$k] = $v;
                } elseif ($k == 'since') {
                $filters[$k . ' ' . $znakod . ' ? '] = "$v";
                } elseif ($k == 'to') {
                $filters[$k . ' ' . $znakdo . ' ? '] = "$v";
                } elseif ($k == 'a') {
                $filters['to'] = null;
                $filters['to > ?'] = date('Y-m-d');
            } else {
                $filters[$k . ' LIKE ?'] = "%$v%";
            }
        }

        $selection = $this->getInvoicesHistoryData($year)->where($filters);

a v jedne fazi:

elseif ($k == 'a')

potrebuju podminku sestavit s OR .. tedy hledam záznamy kdy zpati to IS NULL a zaroven je vetsi nez datum.

Poradí někdo prosim, jak to lze do selection podstrcit takto přes pole?

Moc dekuji!

MW
Člen | 626
+
0
-

Nikdo žádný nápad, prosím?

Díky

David Matějka
Moderator | 6445
+
0
-

kdy zpati to IS NULL a zaroven je vetsi nez datum.

nechtel si rict misto „zaroven“ sluvko „nebo“? :)

zkus

$filters['to IS NULL OR to > ?'] = date('Y-m-d');
MW
Člen | 626
+
0
-

matej21 napsal(a):

kdy zpati to IS NULL a zaroven je vetsi nez datum.

nechtel si rict misto „zaroven“ sluvko „nebo“? :)

zkus

$filters['to IS NULL OR to > ?'] = date('Y-m-d');

Uz si nevidim do huby :D..
Dekuji, zkusim a dam vedet..

MW
Člen | 626
+
0
-

Zaprisahl bych se, ze jsem toto zkousel… :-)
Nicmene, toto funguje.. DIKY !!!!

Editoval MW (12. 3. 2014 14:40)