Oznámení

Provoz fóra byl ukončen

HTML úsek v MySQL – problém s backslashem

před 10 lety

LastHunter
Člen | 1539

Chci do stránky vložit video ve flashi a postupuji tímto kódem:

<object width="589" height="250"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=2377116&server=vimeo.com&show_title=1&show_byline=0&show_portrait=0&color=00adef&fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=2377116&server=vimeo.com&show_title=1&show_byline=0&show_portrait=0&color=00adef&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="589" height="250"></embed></object>

(sakra, ono to Texy přeparsuje a neukáže.. no prostě jak je v Texy značka na přímé vkládání HTML, tak její zakončení (poslední řádek – backslash-pomlčka-pomlčka)

Jenže do DB se uloží bez toho backslashe na posledním řádku. Ve svém CMS s tím nedělám nic jiného, než že ho načtu z $_POST a vložím do databáze. Mám ten backslash nějakým způsobem zdvojit? Nebo začít hledat chybu, kde se ztrácí? Nějaké tipy?

Zafungovalo mi na to mysql_real_escape_string, uloží se to správně, ale načte se to už bez něj. V případě dvou backslashů za sebou se po prvním uložení načte jen jeden a podruhé už žádný. Takže potřebuji ještě nějakou funkci, kterou to proženu na výstupu. mysql_real_escape_string na výstupu mi z toho udělá guláš :)

Díky :)

Editoval LastHunter (19. 2. 2009 21:29)

před 10 lety

David Grudl
Nette Core | 6806

Cokoliv, co vkládáš do databáze, musí být escapováno, např. funkcí mysql_real_escape_string. Ale myslím, že dotaz s Texy nijak nesouvisí.

před 10 lety

LastHunter
Člen | 1539

David Grudl napsal(a):

Cokoliv, co vkládáš do databáze, musí být escapováno, např. funkcí mysql_real_escape_string. Ale myslím, že dotaz s Texy nijak nesouvisí.

Jojo, už jsem na to kápnul. Mysql_real_escape_string při vkládání a htmlspecialchars při výpisu. Potřeboval jsem Texy integrovat do starého systému, kde ještě nepoužívám Dibi a Nette, proto tam nastal tenhle problém.

Díky.