Oznámení
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.