[ ||NeX|| @ 22.09.2003. 15:44 ] @
Kako ste ljudine?
Evo opet dobih neki veliki projekt.
Pa mi treba mala pomoć.

Naime, treba mi skripta, koja će prepoznati jezik izabran u windowsima za keyboard, te ako je njemački da otvori određenu stranicu, a ako nije, već bilo koji drugi da otvori drugu.

I dok skripta radi da piše: Loading ili nešto drugo ...

Je li to moguče, ako ne da ne razbijam glavu.

[ Nikola Denić @ 23.09.2003. 02:21 ] @
Citat:
||NeX||:
Kako ste ljudine?
Evo opet dobih neki veliki projekt.
Pa mi treba mala pomoć.

Naime, treba mi skripta, koja će prepoznati jezik izabran u windowsima za keyboard, te ako je njemački da otvori određenu stranicu, a ako nije, već bilo koji drugi da otvori drugu.

I dok skripta radi da piše: Loading ili nešto drugo ...

Je li to moguče, ako ne da ne razbijam glavu.



ne znam za to , ali misilim da ti je to malo glupo , negde sam naleteo na netu servis koji ti nudi da preko IP -a te pronadje ne samo Zemlju nego i grad ..Radi preko Ip baze ...Sto ne probas preko njih ... Ako ti frka cu da nadjem negde link ... :)
[ broker @ 23.09.2003. 11:36 ] @
Pogledaj dokumentaciju o HTTP upitima. Jedan od podataka je i jezik koji je aktuvan u browseru. Takodje proveri dokumentaciju Apachea (web server) jer on ima podrsku za to tako da sam odluci koju ce stranu da otvori bez potebe za posebnim skriptovima.
[ tOwk @ 23.09.2003. 14:31 ] @
Polje Accept-Language sadrži podatke o jezicima koje je izabrao korisnik.

Ono je u obliku:
jezik[; q=x](, jezik[; q=x])*

Znači, prvo podelite celo ovo polje na zarezima, pa zatim razdvojite kôd od koeficijenta na tačka-zarezu. Koeficijent nije neophodan, a tada se podrazumeva vrednost 1.

Npr. ako je vrednost ovog polja: „sr, hr; q=.5, en; q=.1, ru; q=.3“, to znači da korisnik „želi“ sledeće jezike:
— sr (srpski) bi najradije
— hr (hrvatski) ako nema srpskog
— ru (ruski) ako nema srpskog ni hrvatskog
— en (engleski) ako nema nijednog prethodnog

Ovo istovremeno označava da korisnik ne želi npr. nemački, ali uglavnom čitači propuste i nenavedeni jezik, ako već nije moguće zadovoljiti afinitete.

Takođe, značaj koeficijenta je veći u slučaju „pregovaranja o sadržaju“ (content-negotiation), pa npr. ako korisnik želi text/xml sa q=1, a on je dostupan samo na ruskom jeziku, dok korisnik prihvata i text/html sa q=.7 koji je na serveru dostupan na hrvatskom, onda će dobiti hrvatski text/html (0,7*0,5=0,35 veće od 1*0,3=0,3). Znači, HTTP RFC za detaljno i pažljivo baratanje svim Accept* poljima.
[ Nub.Saibot @ 23.09.2003. 15:00 ] @
Citat:
Nikola Denić:
ne znam za to , ali misilim da ti je to malo glupo , negde sam naleteo na netu servis koji ti nudi da preko IP -a te pronadje ne samo Zemlju nego i grad ..Radi preko Ip baze ...Sto ne probas preko njih ... Ako ti frka cu da nadjem negde link ... :)


Ovo resenje je lose i licno sam to iskusio. U firmi imamo DirectWay link kome je provider preko koga izlazimo na net u Nemackoj, tako da svi sajtovi koji koriste ip lociranje poturaju mi nemacki jezik sto je da poludis.
[ ||NeX|| @ 23.09.2003. 23:44 ] @
Hmm, izgleda mi puno lakše staviti zastavicu i ćao. Hehehhe. Moram još učiti da skontam šta je pisac u mnogim ovim postovima htjeo da kaže.
[ tOwk @ 24.09.2003. 00:36 ] @
Citat:
||NeX||:
Hmm, izgleda mi puno lakše staviti zastavicu i ćao. Hehehhe.


Podesi kod sebe (znači u tvom čitaču veba, tj. web browser-u) jezik na srpski, i poseti prevod.org. Zatim, postavi jezik na hrvatski, i poseti prevod.org. Primećuješ razliku? ;-)

Sve to (osim pretvaranja u latinicu) radi sledeća funkcija:
Code:
function jezik_iz_zaglavlja() {
  global $HTTP_ACCEPT_LANGUAGE;

  $jezici=split(',',$HTTP_ACCEPT_LANGUAGE);
  $srpski=0;
  $hrvatski=0;
  foreach ($jezici as $jezik) {
    if (ereg('^sr$',$jezik,$regs)) {
      $srpski=1;
    } elseif (ereg('^hr$',$jezik,$regs)) {
      $hrvatski=1;
    } elseif (ereg('^sr;[ ]*q=([0-9.]+)$',$jezik,$regs)) {
      $srpski=$regs[1];
    } elseif (ereg('^hr;[ ]*q=([0-9.]+)$',$jezik,$regs)) {
      $hrvatski=$regs[1];
    }
  }
  if ($hrvatski>$srpski) return 1;
  else return 0;
}


Ona je rađena namenski (samo za razlikovanje ova dva „jezika“, pošto stranica jedino njih podržava). Neke stvari (kao upotreba „[ ]“ za razmak u regularnom izrazu) koristim upravo zbog čitljivosti kôda. Jezik je ovde, naravno (u smislu „sigurno ga prepoznajete“, a ne „mnogo je dobar, pa zato“), PHP. Jednom prilikom sam radio i opštije rešenje u Pitonu, pa možda mogu i da ga iskopam ako je potrebno.