[ Predrag Damnjanovic @ 12.06.2002. 18:56 ] @
Sors je na http://www.zastita.co.yu/agent2.php .
Ako hocete da vidite kako radi - http://www.zastita.co.yu/agent1.php .
A agent.php je sama skripta, bez echo i $_SERVER...

Zasto 3.0?
Zato sto sam izbacio eregi, sada sam isao na foru da Agent string explode-ujem u Array, pa onda obicnom FOR petljom proveravam reci...
Mislim da je tako skripta mnogo brza, a i radi znatno sigurnije, i sors je citljiviji.

Tamo sam stavio komentar gde da dodajete nove browsere, veoma lako se dodaju, samo ukucate ime novog browsera, odnosno operativnog sistema.

Skripta radi punih 24h bez ijedne greske, obradila je oko 70 razlicitih Agent potpisa, i deluje mi veoma 'zdravo'.
Ako je budem slucajno update-ovao, ovde cu samo da napisem da sam to ucinio, a vi imate link za sors.

Skriptu sam napravio da bude modularna, pa je i vi tretirajte kao takvu, znaci snimite je u poseban php fajl koji cete da includujete iz vase skripte, tako da ce buduci update proci bezbolno, samo zamenite fajl.

E, i jos nesto, veoma vazno.
Nema vise $os i $browser, stvar je malo komplikovanija zbog estetike.
Naime, glavna skripta se nalazi u funkciji koja vraca jedndimenzioni Array od dva niza - u prvom je upisan OS a u drugi Browser.
Fora je u tome sto ova skripta ne koristi uopste globalne promenljive, sto znaci da MOZE da se koristi u kombinaciji sa svim mogucim skriptama, bez bojaznosti da ce nesto da poremeti.
Sada mozete cak i da birate koja promenljiva ce da sadrzi recimo ime browsera, to ne mora da bude $browser...

Dakle, da rezimiram, ovako nesto bi trebali da upisete u vasu skriptu:
Code:

include ("agent.php");
$a=detect_os_and_browser ($HTTP_USER_AGENT);
$os=$a[0];
$browser=$a[1];


Kao sto rekoh, $browser ne mora da bude $browser (kao i $os), sami krstite promenljivu...
Skripta je 'hermeticki' zatvorena, i ne ostavlja niti menja bilo kakve promenljive.
[ Aleksandar Marković @ 12.06.2002. 20:02 ] @
E moj brale, pa ne radi ti ...to... :-)))

Šalim se, baš fino ... Pohvalno za "zaštitu"
[ Divine @ 13.06.2002. 01:18 ] @
foreach je brzi od for u kombinaciji sa countom
preg_match je brzi od ereg

[ Ivan Golubović @ 13.06.2002. 02:18 ] @
zastita,
pošto vidim da si poslednjih 10 dana uznapredovao od vrezije 1.0 do 3.0 kako bi bilo da lepo sedneš i uradiš sve to što planiraš i onda objaviš, a ne ovako, za svaku malu promenu u kodu nova verzija i to ne ono 1.01, 1.02...? Ajde naziv verzije nije ni toliko bitan, ali napravi jednu verziju i doradi i nazovi je OS & Browser & UFO PHP Detector 256.0... samo nemoj ovako svaki drugi dan iz početka...
[ Mihailo @ 13.06.2002. 03:41 ] @
A fraud protection ? :)

[img]http://www.elitesecurity.org/poruka.php?Action=getfile&MessageID=78447[/img]
[ dr ZiDoo @ 13.06.2002. 09:33 ] @
Citat:
Mihailo:
A fraud protection ? :)

[img]http://www.elitesecurity.org/poruka.php?Action=getfile&MessageID=78447[/img]


$Mihailo = hudini
[ dwarf @ 13.06.2002. 10:26 ] @
A jos kada bi niz bio u stvari hash pa kada bi moglo da se uradi:
Code:

// umesto
$os = $a[0];

// da bude ovako
$os = $a["os"]


E ovo bi zaista bilo super.
[ Predrag Damnjanovic @ 13.06.2002. 13:39 ] @
Mihajlo, odakle skripta zna da li si IE poterao sa Wine... :)
3.1 izlazi za mesec dana, pa vi ako hocete cekajte...
[ alex @ 13.06.2002. 13:53 ] @
Citat:
zastita:
3.1 izlazi za mesec dana, pa vi ako hocete cekajte...


Hm, znaci, posle 3.1 dolazi i 3.11 for Workgroups, pa onda 95, pa 98, pa onda 98SE, pa 2000, pa Me, pa na kraju Xp..

Nemam nista protiv tvog rada i truda, ali zar nije ovakvo pompezno najavljivanje jedne skriptice malo preterano?

Ljudi obicno daju verzije svojim programima kada se nesto drasticno promenilo/ubrzalo/izmenilo itd.. Tvoja skriptica je za 3 dana skocila do verzije 3.0 bez nekih drasticnih izmena.. Bas preterujes ;o)

Just my 2 cents.
[ Predrag Damnjanovic @ 13.06.2002. 14:03 ] @
Pa evo, za 3.1 cete da cekate mesec dana.
OK?
A drasticno se menjala skripta, 3 puta je iznova pisana...
[ Zoran Rašković @ 13.06.2002. 15:35 ] @
OK sve je to lepo ali ako si za 3 dana izdao 3 verzije skripte onda si trebao da malo sacekas da ti se sve lepo slozi i nadodje a ne da za jedan dan izdajes jednu verziju, sutra drugu a preksutra trecu.

Ovako malo izgleda smesno kad pogledas ove ovolike verzije.
[ stinger @ 11.10.2002. 15:02 ] @
sta bi sa ovim? :) oce da izadje nova verzija il nece? :)))
[ Predrag Damnjanovic @ 11.10.2002. 16:06 ] @
Nemam vremena sada, radim (profesionalno)...
[ Gojko Vujovic @ 11.10.2002. 16:17 ] @
Promakla mi ova tema.

Hahahaha prvo sam mislio da se zeza sa ovim verzijama, kad on stvarno radi 'release' 3.0 verzije OS DETECTION scripte!

Ej da je neke os detection barem nego poredi user-agent stringove.. heheh pa peco te se pise 'u hodu', bas ga pretera sa najavljivanjem i objavljivanjem itd..