Avatar billede sjh Nybegynder
24. februar 2007 - 00:02 Der er 11 kommentarer og
1 løsning

Detect RSS Reader med useragent.

Der er vel ikke en af jer eksperter som skulle have et script som kan detect om det er en RSS/XML Reader som tilgår siden?
Avatar billede coderdk Praktikant
24. februar 2007 - 00:31 #1
http://dk2.php.net/get_browser

Der man må kunne lede efter "RSS" i navnet eller noget :)

http://browsers.garykeith.com/downloads.asp
Avatar billede sjh Nybegynder
24. februar 2007 - 00:40 #2
Ja Warning: get_browser(): browscap ini directive not set. Problemet er jo også at jeg ikke ved hvad useragent er på de RSS/XML Reader.. der findes på marked..
Avatar billede sjh Nybegynder
24. februar 2007 - 00:41 #3
Nej det skal være et script som kan køre uden alt for meget bøvl..
Avatar billede coderdk Praktikant
24. februar 2007 - 00:47 #4
Du skal downloade browscap.ini fra det andet link, gemme det på dit site, rette din .htaccess og tilføje:

php_value browscap /fuld/sti/til/browscap.ini

Så vil den virke...
Avatar billede coderdk Praktikant
24. februar 2007 - 00:49 #5
Du kan overveje bare at gøre:

$IsRssReader = ( strpos( strtoupper( $_SERVER['HTTP_USER_AGENT'] ), "RSS" ) > 0 );

og se om det ikke giver noget ;)
Avatar billede sjh Nybegynder
24. februar 2007 - 01:09 #6
Ja jeg kan jo også bare installer alle de rss, xml feed reader som findes ;)

Har tested med:
RssReader
FeedReader

her indgår "Reader" i dem bægge.. men kan jeg regne at alle andre også skriver "Reader" ? nej vel..
Avatar billede coderdk Praktikant
24. februar 2007 - 01:21 #7
Ok, brug get_browser, check parent, hvis den er "Feeds Syndicators" er det en RSS-reader.
Avatar billede coderdk Praktikant
24. februar 2007 - 01:21 #8
Og et svar ;)
Avatar billede sjh Nybegynder
24. februar 2007 - 02:06 #9
Øhh.. ja.. nu vil jeg gerne uden om get_browser() da det muligvis ikke skal køre på min server.. og hvordan kan du sige at der bare skal stå "Feeds Syndicators" ?

der står nemlig ikke "Feeds Syndicators" i de 2 her RssReader, FeedReader
Avatar billede coderdk Praktikant
24. februar 2007 - 02:17 #10
Har du downloadet browscap.ini og ændret din .htaccess som jeg skrev?
get_browser() returnerer et array, et af key'sne i det hedder "parent", hvis det er en RSS-reader, vil den indeholde teksten "Feeds Syndicators"...

browscap.ini indeholder ting som:

[RssBandit/*]
Parent=Feeds Syndicators
Browser="RssBandit"

[Feedreader * (Powered by Newsbrain)]
Parent=Feeds Syndicators
Browser="Newsbrain"

osv... "Feeds Syndicators" er en kategori af browsere i browscap :)
Avatar billede coderdk Praktikant
24. februar 2007 - 02:18 #11
Ellers må du jo downloade browscap.ini og selv hive feeds syndicators ud af filen - Det kan nok lade sig gøre :)
Avatar billede sjh Nybegynder
24. februar 2007 - 03:21 #12
Ja nu kan jeg se din ide :D klokken er også mange.. tak for hjælpen ;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester