textarea – uvodzovky problem pri vkladani do db

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

Caute, malicky problem …

ked vkladam text cez formular do databazy, dalej na obrazovku z db … a ked vlozim ro ‚textarea‘ tenke uvodzovky '', tak mi to pri vkladani do db hodi chybu … viete kde je problem?

David Matějka
Moderator | 6445
+
0
-

jak to ukladas do db?

Takeshi
Člen | 596
+
0
-

matej21 napsal(a):

jak to ukladas do db?

Cez $_POST['']

a klasickym mysql_query … (ucim sa pracovat este s nette prikazmy)

Editoval Takeshi (18. 12. 2013 1:36)

David Matějka
Moderator | 6445
+
0
-

ouuch!

  1. nesahej na $_POST, $_GET, $_COOKIES…
  2. nepouzivej mysql_query

jestli to pouzivas a data neosetrujes (coz dle te chyby nedelas), tak mas aplikaci deravou jak reseto..

projdi si quickstart a examply, tam je ukazany, jak pouzivat formulare, jak z nich ziskat hodnoty, jak se pripojit k databazi a jak to tam ulozit..

Takeshi
Člen | 596
+
0
-

matej21 napsal(a):

ouuch!

  1. nesahej na $_POST, $_GET, $_COOKIES…
  2. nepouzivej mysql_query

jestli to pouzivas a data neosetrujes (coz dle te chyby nedelas), tak mas aplikaci deravou jak reseto..

projdi si quickstart a examply, tam je ukazany, jak pouzivat formulare, jak z nich ziskat hodnoty, jak se pripojit k databazi a jak to tam ulozit..

OK diky .. najradsej pracujem v nette ale teraz nemam na vyber a pracujem v cistom php (viem, ze to sem nepatri ak to niekomu bude vadit – vymazujem) … ako vkladat udaje z formulara inak ako cez post?

David Matějka
Moderator | 6445
+
0
-

v cistem php na $_POST sahat budes muset.. minimalne to escapuj pomoci http://php.net/…scape_string

Filip Procházka
Moderator | 4668
+
0
-

Nette si $_POST přečte, zpracuje do Http\Request a potom si ho přečte formulář a zpracuje do pole výsledků podle klíčů (všech políček co jsi do něj přidal).

V průběhu tohohle procesu ořeže a ošetří nebezpečné vstupy a zbudou ti čistá data, ale i tahle čistá data můžou obsahovat HTML nebo javascript od útočníka, proto musíš správně escapovat parametry pro svoje SQL queries a následně správně escapovat když je někam vypisuješ.

Při ukládání se na to používají parametry jak v dibi tak v Nette\Database. Při vypisování se používá Latte


A netvrď nám, že tě zaměstnavatel nutí pracovat v čistém php, dibi i latte tam můžeš do toho naroubovat vždy – i proti jeho vůli (děláš to pro jeho dobro) ;)

Takeshi
Člen | 596
+
0
-

diky :-)