Autor Zpráva
Ofi
Profil
Dobrý den, mám problém, potřebuji poslat delší text ajaxem na stránku která to zpracuje a přijde má nepraktické a také ne příliš bezpečné řešit to getem, jenže post mi nefunguje, dopustil jsem se v tomto úryvku nějaké zásadní chyby?

var url = 'user_control_script.php';
var hodnota = document.selectUser.user.value;
xmlhttp.open("POST", url, true);
xmlhttp.send("user="+hodnota);
Chamurappi
Profil
Reaguji na Ofiho:
xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlhttp.send("user=" + encodeURIComponent(hodnota));
Záleží také na tom, v jakém kódování očekáváš data, protože encodeURIComponent kóduje do formátu adresy v UTF-8.
Ofi
Profil
já blblec sem měl tu hlavičku špatně :D jo tak děkuji... ještě bych měl otázku na to UTF-8 - mám ho nastavený v databázi ale zdá se mi že nepobírá pár typicky českých znaků, já si udělal knihovnu která si toto teda hlídá ale zajímalo by mě jestli je to možné, že nezvládá takové znaky jako např. písmenko ž ...

myslíte, že je to problém databáze? nebo je to skutečně tak?
Ofi
Profil
můžu i dát příklad který sedí i na ajax: mám formulářovou txtareu kam píšu text ii s háčkami a čárkami, kliknu na tlačítko nechám to ajax zpracovat a on mi vyflusne úplnou hrúzu:
př. do txa napíšu "mašina" a vyflusne mi to "maĺˇina ".. co s tím - header tam mam na kódování českých znaků ale moc to nepomáhá teda :D
header("Content-Type: text/html;charset=windows-1250");
Ofi
Profil
Problém s ut-f vyřešen .
1) tady sem napsal špatnou hlavičku - měl sem smz. tuto:
header("Content-Type: text/html;charset=utf-8");


2) problém byl v tom, že mi program co používám ve kterém programuji (CSE HTML Validator) nekodoval stranky do utf-8 i když sem to měl nastavený..
zkoušel jsem to převést v PSPadu ten to nepobral, naštěstí to zvládnul úplně krásně SCiTE.

můžete lock.

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: