Pirmdiena, 2006. gada 20. novembris

x-ƒ (x_f)

x-ƒ: Īñtëŗņâtīôņàļīžætīøņ

2006. gada 20. novembris, 11:31 am, (bez komentāriem..)

Life is pain, princess. Visam būtu jābūt tik vienkārši – PHP var piespiest saprast UTF-8, Ajax jau defoltā darbojas UTF-8. Dzīve ir skaista. Līdz brīdim, kad izrādās, ka, piemēram, Safari (khtml) ir baisais autsaiders un viņam patīk sūtīt info ar Ajax tieši kā ISO-8859-1. Un iepūt! Pat MSIE, FF un Opera spēj darboties ar to visu pilnīgi identiski (nebijis gadījums), bet..

Galā ar visu šo ķezu gan var tikt, ja pietiekamās devās pielieto JS funkcijas escape(), unescape(), encodeURIComponent(), decodeURIComponent un PHP rawurlencode() un rawurldecode(), taču nedomāju, ka varētu izdarīt TO vēlreiz bez skatīšanās špikerī.

Īsāk sakot (ja visu pareizi esmu sapratis), tad, sūtot prom, laiž caur escape(encodeURIComponent(strings)) un savukārt uz servera to atdabū normālā paskatā ar rawurldecode(), taču, atdodot info atpakaļ weblapai, var iztikt (hmm.. a man darbojas!) bez kodēšanas ar rawurlencode() un tam sekojošās dekodēšanas, ja vien tas kaut kur tiks iebāzts lapā ar .innerHTML, taču alert() gan pieprasīs unescape(decodeURIComponent(strings)). Fiū!

This is not rocket science! Rockets are MUCH simplier than this stuff!