SQL problém s url v podmínce

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

Ahoj, myslel jsem si že když používám nette db table a mám např. tento zápis:

$this->db->table('tabulka')->where('xxx =?', $param)->fetchAll();

Tak se nemusím starat o nějaké ošetřování hodnoty v $param, jenže teď se mi stalo, že jsem zadal url adresu http://..... a TRACY na mě hodila chybu:

SQLSTATE[42000]: Syntax error or access violation: 1064 index res: syntax error, unexpected ‚/‘ near '//

Takže jak bych měl tohle správně ošetřit? Myslel jsem že to za mě dělá nette…

Díky

greeny
Člen | 405
+
+1
-

n.u.r.v. napsal(a):

Ahoj, myslel jsem si že když používám nette db table a mám např. tento zápis:

$this->db->table('tabulka')->where('xxx =?', $param)->fetchAll();

Tak se nemusím starat o nějaké ošetřování hodnoty v $param, jenže teď se mi stalo, že jsem zadal url adresu http://..... a TRACY na mě hodila chybu:

SQLSTATE[42000]: Syntax error or access violation: 1064 index res: syntax error, unexpected ‚/‘ near '//

Takže jak bych měl tohle správně ošetřit? Myslel jsem že to za mě dělá nette…

Díky

Můžeš ukázat celé SQL co tohle způsobuje?

n.u.r.v.
Člen | 485
+
0
-

ahoj, z neznámého důvodu mi nepřišlo upozornění na nový příspěvek do meilu…

Měl jsem to takto:

return $this->databaseSphinx->table('moje_tabulka')->select("id, nazev, adresa")->where("MATCH (?)", "".$search)->limit(10)->fetchAll();

Funguje to dobře, ale když tam dám jako parametr $search = ‚http://www…‘ tak to padne.

Ještě upozorňuji že to není dotaz do mysql databáze ale do sphinxu, ale snad by v tom neměl být rozdíl… Nebo jo?

díky

Editoval n.u.r.v. (8. 6. 2016 12:40)

GEpic
Člen | 566
+
0
-

Já osobně i přesto že Nette toho umí dost, tak hodnoty ověřuji a upravuji podle toho, co kdo zadá a radši odchytím špatný parametr a vyhodím třeba flashMessage, než aby se dotaz vůbec provedl.

greeny
Člen | 405
+
0
-

O SphinxQL nevím vůbec nic, ale po chvilce hledání na googlu jsem narazil na tenhle post: http://sphinxsearch.com/forum/view.html?…, zkus si ho pročíst, třeba ti tam něco poradí

n.u.r.v.
Člen | 485
+
0
-

@greeny díky za odkaz, zítra projdu/vyzkouším… jsem ten problém rovnou hodil na nette a neřešil jsem sphinx… :-(