Autor | Zpráva | ||
---|---|---|---|
artist Profil * |
Dobrý večer,
tento AJAXový skript nefunguje v IE a co je horší, v ostatních prohlížečích jede bez české diakritiky. můj AJAXový skript vypadá takto: function ajax(stranka,kam) { var httpRequest; if(typeof window.ActiveXObject != 'undefined') { httpRequest = new ActiveXObject("Microsoft.XMLHTTP"); } else { httpRequest = new XMLHttpRequest(); } httpRequest.open("GET", stranka, true); httpRequest.onreadystatechange= function () { processRequest(httpRequest, kam) }; httpRequest.send(null); } function processRequest(httpRequest,kam) { if (httpRequest.readyState == 4) { if(httpRequest.status == 200) { if (typeof kam == 'string') { document.getElementById(kam).innerHTML = httpRequest.responseText; } if (typeof kam == 'function') { kam(httpRequest.responseText); } } else { alert("Chyba pri nacitani stanky " + httpRequest.status +" : "+ httpRequest.statusText); } } else { if (typeof kam == 'string' && kam != '') { document.getElementById(kam).innerHTML = 'Načítá se obsah..'; } } } |
||
Str4wberry Profil |
#2 · Zasláno: 2. 3. 2008, 21:26:19
Odpovídám artistovi:
Uvedený kód se mi zdá zkopírovaný odsud, takže bych viděl problém v jeho použití (v HTML stránce, kterous neuvedl). Nefunkční čeština může být způsobena odlišným kódováním souborů. |
||
artist Profil * |
#3 · Zasláno: 3. 3. 2008, 16:18:15
používám to jako filtr;
<a onclick="ajax('/includes/_novinky.php','mainDiv');">VŠE</a> s tím, že mainDiv je v jiném souboru <table width="100%" cellpadding="5" cellspacing="0"> <div id="mainDiv"></div></table> v novinkách jsou normálně buňky apod. vše funguje jak má, jen prostě místo "Dnešek je velice důležitým okamžikem" se vypíše "Dne�ek je velice d�le�it�m okam�ikem" a skript prostě nefunguje v IE (hlásí "Na stránce se vyskytla chyba") |
||
dehtak Profil |
#4 · Zasláno: 3. 3. 2008, 19:30:02
jj to je pravda , jestli ten soubor kterej nahravaj pomoci ajaxe do toho divu ma jiny formatovani nez ta stranka tak to pak dela tohle vsechny soubory by mneli mit stejny formatovani bud utf-8 nebo windows....
|
||
artist Profil * |
#5 · Zasláno: 3. 3. 2008, 21:33:38
to formátování je stejné.
ještě jedna věc - můj kamarád mi útžkouvitě sdělil že ten výstupní soubor, který se zpracovává, má mít nějakou zvláštní xml hlavičku. totiž abyste rozuměli, ten můj vypadá nějak takhle: <? $databaze="jmeno_databaze"; include "../_head.htm"; // hlavička s kódováním windows-1250 include "../../mysql.inc"; } a dál skripty zpracovávající data z tabulek ?> nemá tam být něco speciálního? a taky, když jsem chtěl normálně vypisovat (include připojení k mysql mám už dříve), tak mi to hlásilo chybu v připojení databáze. takže se v tom výstupním souboru musí includovat úplně vše? i hlavičky? |
||
Chamurappi Profil |
#6 · Zasláno: 3. 3. 2008, 21:50:45
Reaguji na artistu:
Nastav parametr charset v HTTP hlavičce Content-Type (asi PHP funkcí header). Bez něj XmlHttpRequest předpokládá UTF-8. |
||
peta Profil |
#7 · Zasláno: 5. 3. 2008, 08:06:01 · Upravil/a: peta
artist
viz CH, kdybys to nepochjopil, priklady na cz.php.net/header . Akorat ten predpoklad je dan nastavenim v apache-config, cili to neni zadny predpoklad :) Tez je mozne pouzit google.com, lepe .cz a hledat ceske stranky o ajaxu, kde budou pouzivat cestinu. Pridal bych slova jako opera explorer firefox... |
||
Chamurappi Profil |
#8 · Zasláno: 5. 3. 2008, 09:07:48
Reaguji na petu:
„Akorat ten predpoklad je dan nastavenim v apache-config, cili to neni zadny predpoklad :)“ Jak se může výchozí vlastnost objektu vytvořeného a běžícího pouze na straně prohlížeče řídit nastavením serveru? |
||
alteaffe Profil * |
#9 · Zasláno: 5. 3. 2008, 14:06:08
artist vis co mne pomohlo , u ajaxe ze jsem vypis z db prevedl na jinej format
$proajax = utf8_encode($vypis['jmeno sloupce']) |
||
parovka Profil * |
#10 · Zasláno: 6. 3. 2008, 18:45:41
Dobrý den, mám stejný problém ve FF mi to jede normálně, ale IE to nezvládá po přídání překodování($proajax = utf8_encode...) mi to místo otazníků píše : pepíèek(původně pepíček) nevíte co s tím?
|
||
Časová prodleva: 5 dní
|
|||
artist Profil * |
#11 · Zasláno: 11. 3. 2008, 13:32:51
tak už jsem to vyřešil, byl to opravdu problém s php header(). moc děkuji, problém vyřešen.
|
||
Časová prodleva: 20 dní
|
|||
flary Profil |
#12 · Zasláno: 31. 3. 2008, 17:50:22
Napiš prosím jak jsi to vyřešil. Mám stejný problém.
|
||
Časová prodleva: 4 dny
|
|||
arti Profil * |
#13 · Zasláno: 4. 4. 2008, 23:06:35
nebyl tam header v php. v každém výstupním souboru musí být
header("Content-type: text/html;charset=windows-1250"); nebo kódování ve kterém je stránka a výstup např. z databáze. to je všechno čarování :) |
||
Časová prodleva: 16 let
|
0