Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Razlicit output u zavisnosti od afiniteta browsera

[es] :: PHP :: Razlicit output u zavisnosti od afiniteta browsera

[ Pregleda: 4398 | Odgovora: 17 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

ducker
Danilo Janjatovic
novi sad

Član broj: 11393
Poruke: 53
*.sbb.co.yu



Profil

icon Razlicit output u zavisnosti od afiniteta browsera18.04.2004. u 19:18 - pre 243 meseci
Pozdrav ljudi, imam problem:
Kako da procitam koji sadrzaj browser zeli da primi? Mislim, prvenstveno, na razlike izmedju HTML, WML i plaintext browsera.
Da pojasnim, zelim da korisnik ode na adresu www.domen.com, pa da ako ide sa mobilnog, dobije WML, ako ide sa PCa dobije HTML, i sl.

Vidim da ES to ima reseno, ali ne kapiram kako. Gledao sam phpinfo(), ali nigde ne vidim sta browser trazi. Jel' postoji neka skripta koja to radi, ili neka lista USER_AGENT-a koju treba da skinem pa da po njoj gledam da li da saljem WML ili HTML?
Ljudi isterujte iz zena zlo, uteruj te im dobro. :)
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
195.252.85.*

Sajt: localhost


+5 Profil

icon Re: Razlicit output u zavisnosti od afiniteta browsera18.04.2004. u 19:50 - pre 243 meseci
loše si gledao phpinfo(). imaš $_SERVER['HTTP_ACCEPT'] koji recimo za mozillu izgleda ovako:

text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8, video/x-mng,image/png,image/jpeg,image/gif;q=0.2,*/*;q=0.1

ako te zanimaju detalji šta znače ovi q= koeficijenti, pogledaj RFC za HTTP/1.0 http://ftp.ics.uci.edu/pub/ietf/http/rfc1945.html.

mada, verujem da je dovoljno da proveriš da li se string wml nalazi u ovom hederu ili ne..
 
Odgovor na temu

Dejan Topalovic
Dejan Topalović
Senior Oracle DBA & Senior PL/SQL
Developer, Erste Sparinvest (Erste
Bank), Vienna, Austria
Vienna

Član broj: 635
Poruke: 1374
*.1.14.vie.surfer.at

Sajt: www.baze-podataka.net


+2 Profil

icon Re: Razlicit output u zavisnosti od afiniteta browsera18.04.2004. u 20:55 - pre 243 meseci
Browser šalje serveru specifične header-e, na osnovu kojih ti možeš odrediti koji output da pošalješ.
Kao što je već -zombie- naveo, ja bih samo dodao još jedan link
http://asg.web.cmu.edu/rfc/rfc2068.html
konkretno poglavlje 14 Header Field Definitions.
Blog - baze podataka
---------------------
Oracle OCP DBA (9i & 10g)
Oracle Database: SQL Certified Expert
Oracle OCP Developer
Certified MySQL DBA
 
Odgovor na temu

ducker
Danilo Janjatovic
novi sad

Član broj: 11393
Poruke: 53
*.35.eunet.yu



Profil

icon Re: Razlicit output u zavisnosti od afiniteta browsera19.04.2004. u 02:56 - pre 243 meseci
Tomice,
meni moj IE6@XP za HTTP_ACCEPT prikazuje:
image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-shockwave-flash, */*

Tu me je bunilo zasto nema text/html ili sl. pa sam se zato pitao kako to... :-)

Klondike WAP browser mi sasvim kulturno javi wap.wml.

Znaci, provera ima li 'wml' stringa? Ajd, probat' cemo... :-)

Hvala svima, skinuo sam RFC-ove, u listi za citanje su.
Ljudi isterujte iz zena zlo, uteruj te im dobro. :)
 
Odgovor na temu

broker

Član broj: 2415
Poruke: 8514
212.62.59.*



+11 Profil

icon Re: Razlicit output u zavisnosti od afiniteta browsera19.04.2004. u 16:57 - pre 243 meseci
Jedna napomenica: iako na prvi pogled izgleda kao zanimljivo resenje mislim da, uopste uzev, to sto si zamislio nije dobro.

WEB je takav medijum da pretpostavlja interaktivnost, a pre svega mogucnost posetiocu da bira sta ce da gleda. Uobicajeno da je se wap verzija sajta nalazi na razlicitoj adresi koja sama po sebi naznacava da se radi o wap sadrzaju. Iako je sada ocigledno da citac obavestava sjt o tome sta moze da prikaze, nije tesko zamisliti citace koji umeju da prikazu i html i wap sadrzaj zavisno sta im se ponudi a tad ce tvoja aplikacija biti problem.

Ovako kako si namerio da uradis, kada nekome das adresu on nece znati da moze da je pogleda wap citacem osim ako mu to posebno ne naglasis. To znaci da ce korisnik biti zbunjen informacijom i u stvari nece ni koristiti wap verziju sajta, jer mu nece biti jasno da ona uopste postoji a on ocekuje da na takvoj adresi bude klasican html.

Logika kojom se vodi dobar sajt je da je on ocigledan i jasan, a koncept koji si zamislio je u suprotnosti sa tom logikom.
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
*.beotel.net

Sajt: localhost


+5 Profil

icon Re: Razlicit output u zavisnosti od afiniteta browsera21.04.2004. u 07:25 - pre 243 meseci
e svakakve gluposti ću još da čujem ovde..

prvo, nije to "njegova zamisao", nego čovek lepo planira da odradi detekciju na najbolji mogući, tj preporučeni način, a ti ga još odvraćaš.. wtf?!?

content-negotiation, tj odabir jedne od dostupnih verzija istog dokumenta (što osim formata uključuje i jezike) je jedna od osnovnih načela na kojima počiva internet svih ovih godina (ko je skoro sa validno-podešenim browserom posetio http://office.microsoft.com). ti standardi su projektovani (od strane ljudi pametnijih od nas ovde) da odgovore upravo na ovakve probleme.

čak ni klijenti koji mogu da interpretiraju više različitih formata nisu problem, jer oni to lepo oglašavaju baš ovim Accept HTTP zaglavljem, i lako se može zaključiti koji format oni preferiraju (to su oni "čudni brojevi" posle q=). pa čak i da ne objave koji preferiraju, uvek je logično poslati najbogatiji format koji klijent podržava (naravno, u slučaju HTMLa i WMLa je to HTML).

znači tehnologija je tu, i to već dugi niz godina, samo se treba malo potruditi i saznati.

i btw, baš me zanima kako je po tebi "očigleno i jasno" da kada korisnik iz wap browsera dođe na sajt koji ima i wml verziju (na drugoj adresi) ne dobije ništa, tj grešku. gde je tu logika?!?
 
Odgovor na temu

broker

Član broj: 2415
Poruke: 8514
212.62.59.*



+11 Profil

icon Re: Razlicit output u zavisnosti od afiniteta browsera21.04.2004. u 16:01 - pre 243 meseci
Logika je da, ako neko u casopisu vidi adresu www.nekidomen.com, on ce pretpostaviti da se radi o HTML sajtu i nece mu ni na kraj pameti biti da tu ima i wap verzija, tako da ako ima samo wap citac nece se ni potruditi da ode na sajt. Medjutim, ako je data adresa wap.nekidomen.com, korisniku ce odmah biti jasno da tamo moze da vidi wap sadrzaj pa ce ako ima samo wap citac otici i da ga vidi.

Logika je da cak i ako korisnik sa wap citacem dodje na sajt www.nekidomen.com, da bude preusmeren na adresu wap.nekidomen.com makar i da je to samo alias, tako da dobije odgovarajuci sadrzaj ali mu je i jasno da se umesala automatika.

Logika je recimo i to da korisnik moze sam na sajtu da bira jezik a ne da sajt sam odlucujekoji ce jezik da koristi na osnovu podesavanaj koja dobije od web citaca.

Logika je i da sajt ne moze da na osnovu IP adrese zakljuci iz koje je zemlje korisnik i da na osnovu toga prilagodjava sadrzaj dokumenata.

Odavno je poznata jedna izreka, nastala bas u IT svetu: napravi program koji mogu idioti da koriste pa ce ga samo idioti i koristiti. Sustina weba je da korisnik kontrolise sta hoce, kada hoce i kako hoce da vidi. Onog momenta kada korisnik izgubi kontrolu, i nije mu jasno sta se desava na sajtu, to jest zbunjen je, sajt gubi tog korisnika. Automatika moze da mu u mnogome pomogne ali ne treba preterivati.

Prepoznavanje podrzanog sadrzaja od strane citaca donekle ima smisla sve dok ne postavlja preterane uslove pred korisnika. Recimo, prepoznavanje tipa i verzije citaca pa mozda i OS-a u nekoj meri moze da bude korisno jer aplikacija moze da prilagodi sadrzaj takvom softveru i to korisnika ne dotice. Ali menjati recimo jezik samo zato sto korisnik ima podesen parametar u OS-u koji njemu sluzi za nesto sasvim drugo ili terati korsinika da podesava paramere citaca ili OS-a samo zato da bi na zeljeni nacin video sadrzaj sajta je besmisleno i to isto onoliko koliko je besmisleno praviti sajt koji podrzava samo odredjenu verziju citaca ili OS-a.

Pozivas se na Microsoft koji je upravo poznat po tome sto preteranom automatikom maltretira korisnike ili ih prisiljava da rade nesto kako im ne odgovara da bi postigli ono sto im je potrebno.
 
Odgovor na temu

noviKorisnik
Dejan Katašić
Novi Sad

Član broj: 13216
Poruke: 4533
*.dialup.neobee.net.

Sajt: www.novikorisnik.net


+5 Profil

icon Re: Razlicit output u zavisnosti od afiniteta browsera21.04.2004. u 23:03 - pre 243 meseci
Ne znam, izuzetno zbunjuješ ovim stavovima.
Citat:
Logika je recimo i to da korisnik moze sam na sajtu da bira jezik a ne da sajt sam odlucujekoji ce jezik da koristi na osnovu podesavanaj koja dobije od web citaca.

Logika je i da sajt ne moze da na osnovu IP adrese zakljuci iz koje je zemlje korisnik i da na osnovu toga prilagodjava sadrzaj dokumenata.

Slažem se da korisnik treba da ima mogućnost izbora jezika na sajtu. Prateći "logiku" nije mi jasno šta korisnik inicijalno dobija po dolasku na sajt - da li je to stranica "odaberite jezik" ili postoji default jezik na kom se prikazuje sadržaj dok korisnik ne skonta da može nešto da čita i po srpski namesto engleskog?
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
*.beotel.net

Sajt: localhost


+5 Profil

icon Re: Razlicit output u zavisnosti od afiniteta browsera22.04.2004. u 04:40 - pre 243 meseci
Citat:
broker:
Pozivas se na Microsoft koji je upravo poznat po tome sto preteranom automatikom maltretira korisnike ili ih prisiljava da rade nesto kako im ne odgovara da bi postigli ono sto im je potrebno.


naravno da je korisniku kasnije omogućeno da promeni jezik i slično, samo mu je default onaj koji je korisnik odabrao u svom browseru. to podešavanje za to i služi!

office.microsoft.com sam iskoristio samo zato što je najsvežiji primer, pa mi je bio u sećanju. istu stvar rade mnogi veliki (tj gotovo svi najveći) sajtovi. problem je samo što mali broj sajtova ima prevod na srpski, pa mi to retko primetimo. promenite preferirani jezik na nemački recimo i posetite sajtove kao što su google, yahoo, hotmail..

google čak radi i na srpskom (osim ako već nemate pref. kuki u kome je sačuvano da želite engleski jezik. ako imate, izbrišite kuki, i podesite u browseru srpski kao prvi jezik, pa probajte).

dakle, pokušavaš da dokažeš da si ti u pravu, a da kompanije koje stoje iza najvećih sajtova nemaju pojma?!?

// zaboravih da je sa tobom besmisleno diskutovati.. ne znam ni zašto se trudim..

 
Odgovor na temu

Goran Rakić
Beograd

Moderator
Član broj: 999
Poruke: 3766

Sajt: blog.goranrakic.com


+125 Profil

icon Re: Razlicit output u zavisnosti od afiniteta browsera22.04.2004. u 17:08 - pre 243 meseci
Podržavam mišljenje da lokacija treba da se automatski što više prilagodi korisniku. I to ne samo po jeziku i sl, već po sadržaju (ko je pomenuo Amazon?).

Ipak, korisnik mora imati i kontrolu, tj. nikada ga ne treba dovesti u situaciju da ne može da kontroliše kroz interakciju sa samom lokacijom šta će mu se prikazati od sadržaja. Pomenuti Office portal postaje naupotrebljiv na srpskom, jer ne dozvoljava prikaz engleskih šablona. Probajte, na kraju sam morao u browser-u da menjam jezik...
http://sr.libreoffice.org — slobodan kancelarijski paket, obrada teksta, tablice,
prezentacije, legalno bez troškova licenciranja
 
Odgovor na temu

Dag
Moscow

Član broj: 11879
Poruke: 97
*.Moscow.dial.rol.ru

Sajt: orwell.ru


Profil

icon Re: Razlicit output u zavisnosti od afiniteta browsera03.05.2004. u 13:06 - pre 243 meseci
Eh broker... logika - u suštini treba uvek da se čita kao "logika" jer onaj koji nikada nije izučavao logiku (i/ili filozofiju) jako teško sa time izlazi na kraj.

Malo više bi trebalo da obraćaš pažnju na to što zombie piše... sve što se tiče adrese (URL) ti pogrešno shvataš. Za tebe je logika da adresa bude ovakvog tipa: Jovana Cvijića, 8, dvosobni stan, kupatilo levo, vc desno a to je pogrešno. URL treba (i mora) da bude jedan za sve UA. Ostalo sve treba da radi inteligentno (logično) naštelovan server (a danas je to najveći problem: jadan će nam biti ovaj svet ako nam logiku diktiraju polupismeni programisti).

Google: to je tragedija a ne logika. Rešio neki glupander tamo da ako ja iz Rusije tražim google.com da će za mene najbolje da bude da mi da stranicu google.ru (re: jezik). Strašna glupost i narušenje svih principa i filozofije URL kao unikalne adrese. Ja sam aborigin koji je doputovao u Moskvu na mesec dana i hoću da gledam google na engleskom bre... ili sam prevodilac... ili linguist... daj mi na toj prvoj stranici "choose your language" i super će biti bre. I nigde mi to nemoj da pamtiš ili pišeš jer danas hoću da gledam na turskom, sutra na niškom, prekosutra na latinici, nakosutra na francuskom... WWW se zove... a geto-tipno razmišljanje...
 
Odgovor na temu

bluesman

Član broj: 4505
Poruke: 1895
*.229.eunet.yu



+1 Profil

icon Re: Razlicit output u zavisnosti od afiniteta browsera04.05.2004. u 15:14 - pre 243 meseci
Citat:
Dag:
Google: to je tragedija a ne logika. Rešio neki glupander tamo da ako ja iz Rusije tražim google.com da će za mene najbolje da bude da mi da stranicu google.ru (re: jezik).

Da, oni su poznati po tome što su jako glupi ljudi.
Citat:
Strašna glupost i narušenje svih principa i filozofije URL kao unikalne adrese. Ja sam aborigin koji je doputovao u Moskvu na mesec dana i hoću da gledam google na engleskom bre...

Ti si aboridžin u Moskvi i jos koliko Vas ima takvih tamo? Ima vas sigurno više nego rusa...

Koliko si se nalupao to je strašno. Prosto ne mogu ni da komentarišem.
Goran Pilipović fka bluesman
 
Odgovor na temu

ducker
Danilo Janjatovic
novi sad

Član broj: 11393
Poruke: 53
*.85.eunet.yu



Profil

icon Re: Razlicit output u zavisnosti od afiniteta browsera24.05.2004. u 09:54 - pre 242 meseci
Znam da je proslo dosta vremena, ali nikad nije naodmet osveziti temu, cisto zbog buducih generacija... ;-)

Elem, evo koda koji sam na kraju sklepao... Ima li neko primedbu na ovo? Mozda nesto na sta nisam obratio paznju?

Inace, onaj q= uopste nisam skontao... :-(

Code:

// HTML/TXT/WML/XML SWITHCER
function get_requested_output() {
    // determine the position of all major types
    $httpa = ' ' . strtoupper($_SERVER['HTTP_ACCEPT']);
    $p['html'] = strpos($httpa, 'TEXT/HTML');
    $p['xml'] = strpos($httpa, '/XML');
    $p['wml'] = strpos($httpa, '/VND.WAP.WML');
    $p['txt'] = strpos($httpa, 'TEXT/PLAIN');
    $p['all'] = strpos($httpa, '*/*');
    // sum all the values in array, so we can subtract later
    $p_sum = array_sum($p);
    // first extract XML for browsers with only XML support (client-side programs)
    if ( $p['xml'] and $p['xml'] == $p_sum ) return 'xml';
    // now WAP browsers
    if ( $p['wml']) {
        // phones with HTML-enabled browsers
        if ( $p['html'] or $p['all'] ) {
            // set a flag that we need a mobile phones parser (trim HTML to 8kb max.)
            $_SESSION['run_parsers'][] = 'wml';
            // but return HTML as default output
            return 'html';
        }
        // only WML browsers
        return 'wml';
    }
    // don't forget fossils with plaintext browsers
    if ( $p['txt'] and !$p['html'] and !$p['all'] ) return 'txt';
    // and eventually, HTML
    return 'html';
}

$covek_hoce_format = get_requested_output();


Ljudi isterujte iz zena zlo, uteruj te im dobro. :)
 
Odgovor na temu

del-boy
Bojan Delić
Beograd

Član broj: 9330
Poruke: 1089

Sajt: www.delic.in.rs


+21 Profil

icon Re: Razlicit output u zavisnosti od afiniteta browsera17.01.2005. u 22:37 - pre 234 meseci
Malo ti ne radi dobro kod. Ja probao da pristupim sa samsungom X100 i on javi da traži HTML!
 
Odgovor na temu

afwt
AF Web Team
Novi Sad/Chicago

Član broj: 8220
Poruke: 337
*.157.EUnet.yu.

Sajt: milos.srdjevic.net/blog


+1 Profil

icon Re: Razlicit output u zavisnosti od afiniteta browsera18.01.2005. u 12:53 - pre 234 meseci
Gde ti puca? Kako ti se prijavljuje browser telefona? daj, posalji malo info-a, da mozemo da patch-ujemo... ;-)
ZelenaLutrija.com - Saznajte sve o lutriji za zelenu kartu (doživotni boravak u Sjedinjenim Američkim Državama)
 
Odgovor na temu

afwt
AF Web Team
Novi Sad/Chicago

Član broj: 8220
Poruke: 337
*.157.EUnet.yu.

Sajt: milos.srdjevic.net/blog


+1 Profil

icon Re: Razlicit output u zavisnosti od afiniteta browsera18.01.2005. u 12:57 - pre 234 meseci
aha... sad sam ti video temu 89898...
napisi sta ti vraca $_SERVER['HTTP_ACCEPT']
naravno... ;-)
ZelenaLutrija.com - Saznajte sve o lutriji za zelenu kartu (doživotni boravak u Sjedinjenim Američkim Državama)
 
Odgovor na temu

del-boy
Bojan Delić
Beograd

Član broj: 9330
Poruke: 1089

Sajt: www.delic.in.rs


+21 Profil

icon Re: Razlicit output u zavisnosti od afiniteta browsera19.01.2005. u 10:19 - pre 234 meseci
Evo šta vraća moj browser sa mobilnog:

Code:
application/vnd.phonecom.mmc-wbxml, application/octet-stream, 
application/vnd.openwave.pp, image/bmp, image/x-up-wpng, application/smil, 
audio/imelody, audio/midi, application/vnd.smaf, 
application/vnd.samsung.specific-image, text/vnd.sun.j2me.app-descriptor, 
application/java-archive, application/java, 
application/vnd.uplanet.bearer-choice-wbxml, application/vnd.wap.wmlc, 
application/vnd.wap.wmlscriptc, application/vnd.wap.multipart.related, 
application/vnd.wap.multipart.mixed, text/plain, text/css, image/gif, image/jpeg, 
image/png, image/vnd.wap.wbmp, application/vnd.wap.sic, application/vnd.wap.slc, 
application/vnd.wap.coc, application/vnd.wap.xhtml+xml, application/xhtml+xml, 
text/html, application/vnd.wap.mms-message, text/vnd.wap.wml, text/vnd.wap.si, 
text/vnd.wap.sl, text/vnd.wap.co, text/vnd.wap.wmlscript, multipart/related, 
multipart/mixed


Lepo piše da browser podržava wml i wmlscript, ali on mi vraća html!
Znam, sad sam video da skripta vraća html ako browser podržava i jedno i drugo, ali ako mu pošaljem html biće mnogo podataka pa neće biti pregledno. Što me opet vraća na moje pitanje "Kako da razlikujem sa čega korisnik dolazi?"

Ako stavim da ukoliko browser podržava oba formata php vraća wml, u tom slučaju će npr. i Opera da traži wml, a to bih hteo da izbegnem!

Neko rešenje?
 
Odgovor na temu

afwt
AF Web Team
Novi Sad/Chicago

Član broj: 8220
Poruke: 337
*.041net.co.yu.

Sajt: milos.srdjevic.net/blog


+1 Profil

icon Re: Razlicit output u zavisnosti od afiniteta browsera08.02.2005. u 12:28 - pre 233 meseci
Ne kapiram u cemu ti je problem.
Tebi je mobilni uredno prijavio da prima i HTML, time sto je poslao 'text/html'. Zato ti je taj kod i podesio HTML za default, a postavio ti je i flag
$_SESSION['run_parsers'][] = 'wml';
da skripta moze kasnije da zna da treba da se igra (parsira) sa HTMLom.

P.S. Izvini zbog kasnog odgovora, retko pregledam svoje stare teme...
ZelenaLutrija.com - Saznajte sve o lutriji za zelenu kartu (doživotni boravak u Sjedinjenim Američkim Državama)
 
Odgovor na temu

[es] :: PHP :: Razlicit output u zavisnosti od afiniteta browsera

[ Pregleda: 4398 | Odgovora: 17 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.