Autor | Zpráva | ||
---|---|---|---|
Prefin Profil |
#1 · Zasláno: 10. 8. 2007, 22:24:43
Ahoj všichni.
Sice si už hraju s weby 4 roky, ale pořád se považuji za začátečníka. Mám web v UTF-8. Na něm chci umístit toolbárek (teď tam je na Jyxo - http://prefin.cz) který by odkazoval podle volby na Seznam, Google a třeba Jyxo. No a problém je v tom, že se mi na seznamu nezobrazují v hledaném výraze správně české znaky - tj. houby to najde. Zkoušel jsem se na technické podpoře dovědět jak sestavil volanou URL včetně proměnných, ale oni se takovými blbinami asi nezabývají. Na seznam posílám url takto: http://search.seznam.cz/?q=hledany_text Myslím si, že kdyby ta url obsahovala informaci o kódování jako např. u Google: http://www.google.cz/search?q=hledany_text&ie=win-1250&oe=win-1250&btn G.x=10&btnG.y=10, mohlo by to situaci vyřešit. Nevíte někdo, jak to poslat? Díky |
||
Marco Profil * |
#2 · Zasláno: 10. 8. 2007, 22:54:18
(Ak sem te pochopil) Nevim presne vsechny znaky - pisma ale vym ze tyto prikazy funguji vzdy
Specialny znak Zobrazeni č č Č Č ť ť Ā Ť ď ď Ď Ď ľ ľ Ľ Ľ ň ň Ň Ň ...................................................................... ... (Je ich moc, tyhle vim naspamet). Tyhle spolehlive viecicky sem sehnal v html editoru: Acehtml6pro urcite se nekde daji sehnat na internetu |
||
Marco Profil * |
#3 · Zasláno: 10. 8. 2007, 22:55:26
(Ak sem te pochopil) Nevim presne vsechny znaky - pisma ale vym ze tyto prikazy funguji vzdy
Specialny znak Zobrazeni &č č &Č Č &ť ť &Ā Ť &ď ď &Ď Ď &ľ ľ &Ľ Ľ &ň ň &Ň Ň ...................................................................... ... (Je ich moc, tyhle vim naspamet). Tyhle spolehlive viecicky sem sehnal v html editoru: Acehtml6pro urcite se nekde daji sehnat na internetu |
||
Marco Profil * |
#4 · Zasláno: 10. 8. 2007, 22:57:39
ach boze fakt te znaky za neda znicim .................. ale vim...
kukni si tuhle spravu (Ak sem te pochopil) Nevim presne vsechny znaky - pisma ale vym ze tyto prikazy funguji vzdy Specialny znak Zobrazeni č č Č Č ť ť Ā Ť ď ď Ď Ď ľ ľ Ľ Ľ ň ň Ň Ň ...................................................................... ... (Je ich moc, tyhle vim naspamet). Tyhle spolehlive viecicky sem sehnal v html editoru: Acehtml6pro urcite se nekde daji sehnat na internetu je 2 v jej zdrojovem kodu by mnelo byt te znaky - spolehlive |
||
Prefin Profil |
#5 · Zasláno: 10. 8. 2007, 23:39:48
Sorry, chvilku jsem byl bez elektřiny - bouřka.
No, když zadám třeba slovo půjčky, tak se do Seznamu dostane pouze "P|" anebo jsou české znaky nahrazeny entitami "p%u016Fj%u010Dky". Když stránky přehosím do windows-1250 (na jiném webu) tak je to ok. Tomu kódování jsem nikdy moc neporozuměl. |
||
Prefin Profil |
#6 · Zasláno: 10. 8. 2007, 23:47:24
Například zase do Atlasu to jde takhle:
http://search.atlas.cz/?q=p%u016Fj%u010Dky&lang=0 a hledaný řetězec je v pořádku. Na odesílání používám tento script (javascript neovládám - pouze jsem ho opsal a trochu přizpůsobil): <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
||
Časová prodleva: 2 měsíce
|
|||
Petroff Profil |
#7 · Zasláno: 26. 9. 2007, 15:40:03 · Upravil/a: Petroff
Možná že to nic nevyřeší (ale ani nezkazí). Ale přečteš-li si článek: Funkce escape a mezinárodní znaky v URL tak zjistíš že je lepší použít JS funkci encodeURI místo escape.
Hele, mě to šlape (aspoň ve firefoxu) =>zjistil jsem, že pro UTF-8 je speciální funkce encodeURIComponent , která se postará kromě diakritiky i o znaky se zvl.významem v URL: mezera,+,&,=..... Takže si nahraď funkci uprava_retezce touto jednodušší ale fungující verzí. function uprava_retezec(text) { var retezec=""; for (var i=0; i<text.length;++i) retezec = retezec + encodeURIComponent(text.charAt(i)); return retezec; } Kdyby se vyskytly nějaké problémy napiš (ikdyž jsem co se tvorby webu týče začátečník - s javascriptem jsem na tom líp). |
||
Petroff Profil |
#8 · Zasláno: 26. 9. 2007, 16:06:39
Počítám, že to bude fungovat na všech vyhledávačích, které mají v HTML charset=utf-8.
Ty, co mají windows-1250 nebo ISO to zobrazí a POCHOPÍ jako nesmyslné znaky - ty by potřebovaly alternativní funkci upravit a celkově by byly 2 proměnné textA a textU a 2 funkce volej server....jinými slovy: šlo by to zařídit |
||
Prefin Profil |
#9 · Zasláno: 26. 9. 2007, 16:35:51
Díky za pomoc.
Fakt je, že jsem zatím rezignoval a nechal si na webu pouze Jyxo. On je stejně smysl použití vyhledávacího pole které volitelně odkazuje na několik vyhledávačů diskutabilní. Ale vrátím se k tomu už proto že mě zajímá jestli to nějak půjde. Díky |
||
Petroff Profil |
#10 · Zasláno: 27. 9. 2007, 15:46:52 · Upravil/a: Petroff
Máš zprovozněné všechny vyhledávače.
======== Popis a výsledek konverze keywordu [ěščřžýáíé] =========== A. Vyhledávače s charset=utf-8: textU = uprava_retezec_utf("ěščřžýáíé") = "%C4%9B%C5%A1%C4%8D%C5%99%C5%BE%C3%BD%C3%A1%C3%AD%C3%A9" ( použita funkce encodeURIComponent ) B. Vyhledávače s charset=windows-1250: textA = uprava_retezec_ansi("ěščřžýáíé") = "%EC%9A%E8%F8%9E%FD%E1%ED%E9" ( použita vlastní konverzní funkce ) >>> ATLAS - ikdyž má charset=windows-1250 - bude fungovat také způsobem A, jelikož jsem opravil search řetězec: if (server[2].checked == true ){var url ="http://search.atlas.cz/?t=a&utf=y&q=" + text + "&lang=0"}; ========================================================= (@) Kód je trochu neforemný a nepřehledný (na to jak jednoduchou činnost vykonává). Nejvíc to vadí při event.změnách vyhledávačů (údaje jsou roztroušeny na více místech). Navrhuju uložit všechny údaje do jediné proměnné s názvem servery . ---------------------------------------------------------------------- var servery=[]; servery.push(VYHLEDÁVAČ č.1); servery.push(VYHLEDÁVAČ č.2); servery.push(VYHLEDÁVAČ č.3); . . . . . . . . . . . . . . . . servery.push(POSLEDNÍ VYHLEDÁVAČ); ---------------------------------------------------------------------- - kde údaje o vyhledávači=položky: (1)Popiska (2)Kódování (3+4)řetězce~části URL např: servery.push( ["Gooogle", "U", "http://www.google.cz/search?hl=cs&q=", ""] ); a víc by nebylo třeba nastavovat... (@@) Mám ještě jeden návrh ohledně ovládání/zobrazení/usnadnění - myslím totiž že souběžné vyhledávání 1 věci z několika zdrojů se může hodit,pokud nejsi nucen přitom dělat řadu zbytečností "navíc" jako: - vybrat + pak odeslat - přepnout se do okna s výsledky + přepnout se zpět (tohle se týká stránek v TABs nebo pokud se okna překrývají) - vrátit se pokračovat ve výsledcích k prvnímu vyhledávači, a muset klikat >2.>3.>4.stránka s výsledky (tady jsi předtím skončil) Tyhle zádrhely odstranit - všechno další by už byly bonusy = navíc ! (třebas "předčítání" =načítání další stránky popř. zbývajících vyhledávačů zatímco čteš => abys měl násled.str.s výsledky ihned) P.S. Při formátování příspěvků může dojít k natržení dlouhých řádků(bez mezer). Prostě se mezi znaky objeví mezera navíc. Kód v JS se může stát nefunkční quli takové prkotiny <== bolestná zkušenost. (radši jsem tomu předešel úmyslným rozkouskováním 1 řetězce - žádný jiný smysl ta úprava řádku server[5] nemá.... |
||
Časová prodleva: 18 let
|
0