Autor Zpráva
Dandys2012
Profil *
Zdravím. Už záčínám bejt zoufalej.
Mám textarea, kterou když odešlu klasickým formulářem, tak se mi do databáze uloží text se zalomenými řádky, což je super.

Když ale pak můžu vytvořenej text editovat v jiném textarea, odešlu editovaný text přes ajax. Než ho odešlu, ověřím si přes alert, že je opravdu zalomený. Ale na ajaxový script už dorazí nezalomený a tak se mi do db nezalomený taky uloží.

Nevíte co s tím?


volání ajaxu:
var text=document.getElementById('textovepole'+id).value;

var temp = new Image(); temp.src = "....bla bla/ajax-uloz-zmeny-odstavce.php?edituje_text_odstavce="+id+"&text="+text;


a v ajaxu:

MySql_Query("UPDATE odstavce SET text='".$_GET['text']."' WHERE id='".$_GET['edituje_text_odstavce']."'", $spojeni);
Radek9
Profil
Dandys2012:
Použij funkci encodeURIComponent:
temp.src = "....bla bla/ajax-uloz-zmeny-odstavce.php?edituje_text_odstavce="+id+"&text="+encodeURIComponent(text);

Jinak tohle není úplně vhodný způsob posílání delšího textu (z důvodu limitu délky URL). Lepší by bylo opravdu použít AJAX (XMLHttpRequest) s HTTP metodou POST.
Dandys2012
Profil *
Díky moc !!!!
Funguje. Já už jsem myslel, že si to hodim..
Jinak jsem koukal, že URL je omezená na 2000 znaků, což by tady v tom případě mohlo stačit.. ale do budoucna se mi hodí to vědět. Ještě jednou díky.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: