Hej Att då tag i besökarens IP är ju inte så klurigt, servervariabel löser det åt dig. IP adressen har jag det är inga problem. Problemet var att översätta den till ett företag och dess filial. Whois fungerar inte då det är grå adresser.Kolla IP adresser
Någon som vet om det finns något färdigt eller som har tips på hur man kan lösa detta problem.
Vill kunna få ut statistik på besökare på en hemsida. Lagrar idag besökarens IP adress och jag vill veta vilket företag som har respektive adress. På så sätt kan vi få veta vilka som är frekventa besökare och vilka som inte sköter sig.
OBS!!!!! Detta är INTE ett publikt nät! Jag har IP planen.
Alltså besökaren har kanske 10.58.128.12
Enligt IP Planenen tillhör detta företag X filial Y (10.58.128.0/24)
Någon som är med på vad jag vill?!
RogerSv: Kolla IP adresser
Vill du även köra en Whois för att veta vem Ip ägaren är? Eller är det något du
sparat ner själv?
Mvh JohanSv: Kolla IP adresser
Lurade runt lite på nätet och hittade ett sätt att göra om IP til ett tal.
<code>
_address="10.58.42.130";
arr = address.Split(new char[] {'.'});
_ip= Convert.ToInt64(arr[0])*16777216;
_ip+=Convert.ToInt64(arr[1])*65536;
_ip+=Convert.ToInt64(arr[2])*256;
_ip+=Convert.ToInt64(arr[3]);
</code>
Detta ger 171584130
Fixade sedan en tabell som innehåller lägsta och högsta värdet för ett företag och deras filial och får ut antalet besök med följande SQL
<code>
SELECT
dbo.Companys.Name AS Företag,
dbo.Sites.Description AS Filial,
COUNT(*) AS Antal
FROM
dbo.Companys
INNER JOIN
dbo.Sites ON
dbo.Companys.CompanyID = dbo.Sites.CompanyID
RIGHT OUTER JOIN
dbo.SiteLog ON dbo.Sites.IPLow <= dbo.SiteLog.IPNumber AND
dbo.Sites.IPHigh >= dbo.SiteLog.IPNumber
GROUP BY
dbo.Companys.Name,
dbo.Sites.Description
</code>
Någon som har något annat tips på hur man kan göra tro?!
Roger