|
| ip-adresse som decimalform Fra : Anders Boholdt-Peter~ |
Dato : 03-11-06 10:34 |
|
Hej,
Findes der en måde, hvorpå man i ASP kan vise brugerens ip-adresse i
decimalform, ligesom man kan få vist brugerens ip-adresse?
Jeg har søgt på svar her i gruppen, men har ikke kunne finde noget om dette
emne.
På forhånd tak for eventuelle svar, og god weekend til alle.
--
/ Anders
http://www.boholdt-petersen.dk
| |
Thrane (03-11-2006)
| Kommentar Fra : Thrane |
Dato : 03-11-06 10:59 |
|
"Anders Boholdt-Petersen" <post-REMOVETHIS-@boholdt-petersen.dk> wrote in
message news:454b0d2b$0$181$157c6196@dreader1.cybercity.dk...
> Hej,
>
> Findes der en måde, hvorpå man i ASP kan vise brugerens ip-adresse i
> decimalform, ligesom man kan få vist brugerens ip-adresse?
>
> Jeg har søgt på svar her i gruppen, men har ikke kunne finde noget om
dette
> emne.
>
> På forhånd tak for eventuelle svar, og god weekend til alle.
>
> --
>
> / Anders
> http://www.boholdt-petersen.dk
>
>
Er det et trickspørgsmål?
Elelr vil du blot have erstattet xxx.xxx.xxx.xxx med xxx,xxx,xxx,xxx?
For så:
<% = replace(request.servervariables("REMOTE_ADDR"),".",",") %>
/Thrane
| |
Anders Boholdt-Peter~ (03-11-2006)
| Kommentar Fra : Anders Boholdt-Peter~ |
Dato : 03-11-06 11:05 |
|
"Thrane" <kyskoen@stofanet.dk> skrev i en meddelelse
news:454b1333$0$3483$edfadb0f@dread11.news.tele.dk...
> Er det et trickspørgsmål?
>
> Elelr vil du blot have erstattet xxx.xxx.xxx.xxx med xxx,xxx,xxx,xxx?
Det jeg mener er det som man kan se på hjemmesiden
http://www.myip.dk
Der kan man se ens ip-adresse som decimalform (det lange tal der vises).
På forhånd tak for eventuelle svar.
--
/ Anders
http://www.boholdt-petersen.dk
| |
Jens Gyldenkærne Cla~ (03-11-2006)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 03-11-06 11:36 |
|
Anders Boholdt-Petersen skrev:
> Findes der en måde, hvorpå man i ASP kan vise brugerens
> ip-adresse i decimalform, ligesom man kan få vist brugerens
> ip-adresse?
Når du siger decimalform, mener du så som et enkelt heltal?
Jeg har ikke nogen asp-funktion ved hånden, men du kan måske få
inspiration af følgende c#-funktion:
private static int IPStringToInt(string IP){
if(IP.IndexOf(".")<0) throw new Exception("Invalid IP
address");
string[] addr = IP.Split('.');
if(addr.Length!=4) throw new Exception("Invalid IP address");
byte[] bytes = new
byte[]{byte.Parse(addr[0]),byte.Parse(addr[1]),byte.Parse(addr
[2]),byte.Parse(addr[3])};
return BitConverter.ToInt32(bytes,0);
}
Jeg har for et par dage siden henvist til en funktion i T-SQL
(MSSQL's variant af sql) der gør det samme:
< http://sqlserver2000.databases.aspfaq.com/how-should-i-store-an-ip-address-in-sql-server.html>
Bemærk at T-SQL-udgaven omsætter til et 2-komplement-heltal (hvor
1. bit i 1. oktet afgør fortegnet) - det betyder fx at
ipStringToInt('130.0.0.1') < ipStringToInt('10.0.0.1'). Man kan
ændre den så den ikke arbejder med fortegn, men så skal datatypen
ændres til bigint.
Den generelle teknik er simpel:
- Split strengrepræsentationen op ved punktummerne (split(ip, "."))
- Tjek at der er fire dele (UBound(ipArray = 4))
- Tjek at hver part er numerisk (isNumeric(ipArray(x)))
- Gang hver part med passende heltal og læg sammen
De to kontroltjek kan evt. håndteres af et regex.
--
Bolig søges. Andel eller leje i Emdrup, Nordvest, Nørrebro, Søborg
eller Brønshøj, max 6000 pr. måned.
Kontakt pr. mail - nospam(at)gyros.dk
Jens Gyldenkærne Clausen
| |
Lars Hoffmann (03-11-2006)
| Kommentar Fra : Lars Hoffmann |
Dato : 03-11-06 14:36 |
|
Anders Boholdt-Petersen wrote:
> Hej,
>
> Findes der en måde, hvorpå man i ASP kan vise brugerens ip-adresse i
> decimalform, ligesom man kan få vist brugerens ip-adresse?
>
> Jeg har søgt på svar her i gruppen, men har ikke kunne finde noget om dette
> emne.
Det er ellers ikke så svært:
En IP addresse er noget i stil med A.B.C.D og du kan bruge følgende
formular for at omdanne til et decimaltal:
tal = A*(256^3)+B*(256^2)+C*(256^1)+D*(256^0)
<=>
tal = A*(256^3)+B*(256^2)+C*(256)+D
Så i ASP kan du snildt lave noget i stil med:
IP = "111.222.121.212"
IPArray = split(IP,".")
Decimaltal =
IPArray(1)*256^3+IPArray(2)*256^2+IPArray(3)*256+IPArray(4)
Du må selv lige tilføje noget fejlsikring og rette eventuelle
tyrkfejl i ovenstående kode, da det på ingen måder er prøvet.
Med venlig hilsen
Lars Hoffmann
| |
Jens Gyldenkærne Cla~ (03-11-2006)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 03-11-06 15:37 |
|
Lars Hoffmann skrev:
> IP = "111.222.121.212"
> IPArray = split(IP,".")
> Decimaltal =
> IPArray(1)*256^3+IPArray(2)*256^2+IPArray(3)*256+IPArray(4)
Algoritmen er fin nok, men husk lige at arrays er 0-indekserede.
Jeg har lavet en funktion der laver konverteringen og håndterer
evt. fejl ved at returnere -1
< http://gyros.dk/usenet/asp/ip.asp>
Funktionen kan afprøves på siden.
--
Bolig søges. Andel eller leje i Emdrup, Nordvest, Nørrebro, Søborg
eller Brønshøj, max 6000 pr. måned.
Kontakt pr. mail - nospam(at)gyros.dk
Jens Gyldenkærne Clausen
| |
Anders Boholdt-Peter~ (05-11-2006)
| Kommentar Fra : Anders Boholdt-Peter~ |
Dato : 05-11-06 16:25 |
|
"Jens Gyldenkærne Clausen" <jens@gyros.invalid> skrev i en meddelelse
news:Xns98709EEDD9Ajcdmfdk@gyrosmod.dtext.news.tele.dk...
> Jeg har lavet en funktion der laver konverteringen og håndterer
> evt. fejl ved at returnere -1
Kanon - virkelig godt gået!!!
Hvordan med formen der sender inputtet til beregningen?
Kan man eventuelt lave noget der automatisk beregner ip-adressen som
decimalform (jeg postede tidligere her i gruppen et indlæg, hvor jeg spurgte
til en funktion der viste den besøgenes ip-adresse).?
Går man ind på
http://www.myip.dk
kan man dels se ens ip-adresse, plus ip-adressen som decimalform.
Det var noget i den stil, som jeg gerne ville finde ud af, om man selv kunne
lave (eventuelt med hjælp her fra gruppen).
Det er virkelig fedt, at disse nyhedsgrupper findes - og det er virkelig
fedt, at folk er så flinke til at hjælpe!!! jeg er ikke ligefrem den bedste
programmør, så denne gruppe er virkelig til stor hjælp!
Til blinde findes der desværre ikke ret mange danske bøger om programmering
i ASP.
På forhånd mange tak for eventuelle svar.
--
/ Anders
http://www.boholdt-petersen.dk
| |
Jens Gyldenkærne Cla~ (03-11-2006)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 03-11-06 16:09 |
|
Lars Hoffmann skrev:
>> Algoritmen er fin nok, men husk lige at arrays er 0-indekserede.
>
> Jojo, men det kommer nu an på hvilken base man har sat
Ikke rigtig. De arrays man får ved at bruge split (som dit
eksempel også gjorde) har 0 som base.
>> < http://gyros.dk/usenet/asp/ip.asp>
>
> Det må kunne gøres nemmere
Hvorfor gå over åen når man kan tage bussen til supermarkedet,
finde hylderne med kildevand, bruge 10 minutter på at afgøre
hvilket mærke man vil købe, finde den mindst lange kø der alligevel
kort tid efter går helt i stå, betale i dyre domme og endelig misse
bussen hjem igen
--
Bolig søges. Andel eller leje i Emdrup, Nordvest, Nørrebro, Søborg
eller Brønshøj, max 6000 pr. måned.
Kontakt pr. mail - nospam(at)gyros.dk
Jens Gyldenkærne Clausen
| |
Torben Brandt (03-11-2006)
| Kommentar Fra : Torben Brandt |
Dato : 03-11-06 23:57 |
|
Jens GyldenkærneClausen wrote:
> Lars Hoffmann skrev:
>
> > > < http://gyros.dk/usenet/asp/ip.asp>
> >
> > Det må kunne gøres nemmere
>
> Hvorfor gå over åen når man kan tage bussen til supermarkedet,
> finde hylderne med kildevand, bruge 10 minutter på at afgøre
> hvilket mærke man vil købe, finde den mindst lange kø der alligevel
> kort tid efter går helt i stå, betale i dyre domme og endelig misse
> bussen hjem igen
Fordi det kan være sjovt - og så skal vi da heller ikke snydes for en
løsning med regular expression
Function ipString2int(sIP)
Dim oRegEx, oOctets, i
Set oRegEx = New RegExp
oRegEx.Pattern = Replace("^x\.x\.x\.x$", "x",
"([01]?\d{1,2}|2[0-4]\d|25[0-5])")
Set oOctets = oRegEx.Execute(sIP)
If oOctets.Count = 1 Then
ipString2int = 0
For i = 0 To 3
ipString2int = 256 * ipString2int + CDbl(oOctets(0).SubMatches(i))
Next
Else
ipString2int = -1
End If
End Function
Jeg mener nu ikke nødvendigvis at denne løsning er at foretrække. Det
er bare et andet forslag - som så også tilfører lidt bedre
inddata-validering (er 0.0.0.0 i øvrigt en gyldig ip?)
mvh Torben
--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jens Gyldenkærne Cla~ (05-11-2006)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 05-11-06 22:32 |
|
Anders Boholdt-Petersen skrev:
> Hvordan med formen der sender inputtet til beregningen?
Den er der ikke mange ben i. Du kan se den i kildekoden på
eksempelsiden.
> Kan man eventuelt lave noget der automatisk beregner
> ip-adressen som decimalform
Hvilken adresse skal beregnes? Der er intet problem i at beregne
noget automatisk - det er jo bare at kalde funktionen med det
samme.
> Går man ind på
> http://www.myip.dk
> kan man dels se ens ip-adresse, plus ip-adressen som
> decimalform.
>
> Det var noget i den stil, som jeg gerne ville finde ud af, om
> man selv kunne lave (eventuelt med hjælp her fra gruppen).
Det er ikke svært. Du finder ip-adressen med en passende
servervariabel og derefter kan du finde decimalværdien ved at bruge
funktionen fra før.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html
| |
Anders Boholdt-Peter~ (06-11-2006)
| Kommentar Fra : Anders Boholdt-Peter~ |
Dato : 06-11-06 09:21 |
|
"Jens Gyldenkærne Clausen" <jens@gyros.invalid> skrev i en meddelelse
news:Xns9872E539AA196jcdmfdk@gyrosmod.cybercity.dk...
> Hvilken adresse skal beregnes? Der er intet problem i at beregne
> noget automatisk - det er jo bare at kalde funktionen med det
> samme.
Det var meningen, at man skulle kunne få ens ip-adresse oplyst som
decimalform uanset hvor man besøgte min test-side fra.
Jeg vil kikke lidt på det som du har lavet, og se om jeg kan finde ud af
noget.
Jeg kikkede lidt i adresselinien til myip.dk, og der kan jeg se, at den
bruger en DLL-fil til beregningen (i hvert fald hvis man vælger at få
konverteret sin ip til decimalform manuelt).
Da jeg ikke er god til sådanne DLL-filer, nøjes jeg bare med at bruge
myip.dk, såfremt jeg ikke udfra ovenstående kan bakse noget sammen der
virker.
Nogle gange bliver jeg bare nysgerrig for at finde udaf, hvordan f.eks.
myip.dk er kodet, og om man selv kunne lave noget tilsvarende.
Som sagt, så er jeg ikke den store programmør (endnu).
--
/ Anders
http://www.boholdt-petersen.dk
| |
Jens Gyldenkærne Cla~ (06-11-2006)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 06-11-06 09:46 |
|
Anders Boholdt-Petersen skrev:
> Det var meningen, at man skulle kunne få ens ip-adresse oplyst
> som decimalform uanset hvor man besøgte min test-side fra.
Så skal du bare have fat i REMOTE_ADDR.
Jeg har opdateret siden så den tager REMOTE_ADDR (brugerens ip-
adresse) som default hvis der ikke angives en adresse i
querystring. Man kan også helt droppe at læse querystring, hvis man
bare skal have indlæst/konverteret brugerens adresse.
< http://gyros.dk/usenet/asp/ip.asp>
--
Bolig søges. Andel eller leje i Emdrup, Nordvest, Nørrebro, Søborg
eller Brønshøj, max 6000 pr. måned.
Kontakt pr. mail - nospam(at)gyros.dk
Jens Gyldenkærne Clausen
| |
Anders Boholdt-Peter~ (06-11-2006)
| Kommentar Fra : Anders Boholdt-Peter~ |
Dato : 06-11-06 10:55 |
|
"Jens Gyldenkærne Clausen" <jens@gyros.invalid> skrev i en meddelelse
news:Xns987363574B3DEjcdmfdk@gyrosmod.dtext.news.tele.dk...
> Jeg har opdateret siden så den tager REMOTE_ADDR (brugerens ip-
> adresse) som default hvis der ikke angives en adresse i
> querystring. Man kan også helt droppe at læse querystring, hvis man
> bare skal have indlæst/konverteret brugerens adresse.
>
Hvordan knækker man så nøden, så man dropper querystring (jeg har
eksperimenteret med den fil du har lavet - men jeg kan ikke gennemskue, hvad
man skal rette)?
Endnu en gang tak for det flotte arbejde med at hjælpe - det er virkelig
fedt !
Man lære virkelig noget ved at spørge om hjælp i disse nyhedsgrupper!
På forhånd mange tak for eventuelle svar.
--
/ Anders
http://www.boholdt-petersen.dk
> < http://gyros.dk/usenet/asp/ip.asp>
> --
> Bolig søges. Andel eller leje i Emdrup, Nordvest, Nørrebro, Søborg
> eller Brønshøj, max 6000 pr. måned.
> Kontakt pr. mail - nospam(at)gyros.dk
> Jens Gyldenkærne Clausen
| |
Jens Gyldenkærne Cla~ (06-11-2006)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 06-11-06 11:05 |
|
Anders Boholdt-Petersen skrev:
> Hvordan knækker man så nøden, så man dropper querystring (jeg
> har eksperimenteret med den fil du har lavet - men jeg kan
> ikke gennemskue, hvad man skal rette)?
Prøv at eksperimentere lidt videre - det er ganske simpelt.
--
Bolig søges. Andel eller leje i Emdrup, Nordvest, Nørrebro, Søborg
eller Brønshøj, max 6000 pr. måned.
Kontakt pr. mail - nospam(at)gyros.dk
Jens Gyldenkærne Clausen
| |
Anders Boholdt-Peter~ (06-11-2006)
| Kommentar Fra : Anders Boholdt-Peter~ |
Dato : 06-11-06 19:56 |
|
"Jens Gyldenkærne Clausen" <jens@gyros.invalid> skrev i en meddelelse
news:Xns987370BFD5499jcdmfdk@gyrosmod.dtext.news.tele.dk...
> Prøv at eksperimentere lidt videre - det er ganske simpelt.
Det har jeg så gjort, og jeg tror det er lykkedes.
Jeg har desuden fjernet formularen, så man kun ser ens aktuelle ip-adresse,
plus hvad det er som dicimalform.
Da jeg køre med fast ip-adresse, kan jeg ikke lige se om det virker.
Nedenunder det viste tal i decimalform kan man nemlig se noget kode, som jeg
ikke kan gennemskue, om kommer fra den oprindelige fil, eller om koden er
vist fordi jeg har glemt et eller andet.
Hvis der er nogle der vil, kan det tjekkes ud her:
http://www.test.boholdt-petersen.dk/ip1.asp
Er der eventuelt nogle der kan se hvor fejlen ligger?
--
/ Anders
http://www.boholdt-petersen.dk
| |
Jens Gyldenkærne Cla~ (08-11-2006)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 08-11-06 09:34 |
|
Anders Boholdt-Petersen skrev:
> Hvis jeg nu også gerne vil have min host vist
Hvad mener du med din host?
Er det navnet bag et ip-nummer du er ude efter? (altså fx
node442.someISP.com).
Og er det klientens adressse (forskellig for hver bruger) eller
serverens adresse (konstant) du vil vise?
Hvis du gerne vil vise et hostnavn på klienten (altså hostnavnet
bag det ip-nummer du viser nu), må jeg nok skuffe dig - det er ikke
praktisk muligt. Mange computere har ikke tilknyttet et navn, og
selv blandt dem der har, er det ikke altid muligt at få det ud.
I princippet kan du bruge REMOTE_HOST i stedet for REMOTE_ADDR og
derved få hostnavnet - men på de servere jeg har prøvet det på,
giver REMOTE_HOST præcis det samme som REMOTE_ADDR - altså et ip-
nummer.
--
Bolig søges. Andel eller leje i Emdrup, Nordvest, Nørrebro, Søborg
eller Brønshøj, max 6000 pr. måned.
Kontakt pr. mail - nospam(at)gyros.dk
Jens Gyldenkærne Clausen
| |
Anders Boholdt-Peter~ (08-11-2006)
| Kommentar Fra : Anders Boholdt-Peter~ |
Dato : 08-11-06 10:00 |
|
"Jens Gyldenkærne Clausen" <jens@gyros.invalid> skrev i en meddelelse
news:Xns9875615055E61jcdmfdk@gyrosmod.dtext.news.tele.dk...
> Anders Boholdt-Petersen skrev:
>
> Er det navnet bag et ip-nummer du er ude efter? (altså fx
> node442.someISP.com).
Jeps, det var det som jeg havde tænkt mig, men hvis det ikke er muligt i ASP
er det bare OK.
På den hjemmeside som jeg efterhånden har haft nævnt et par gange her i
tråden (
http://www.myip.dk)
kan jeg f.eks. se det navn der gemmer sig bag min faste ip-adresse som jeg
har ud mod internettet.
Hvordan det så er lavet ved jeg ikke, men virker, det gør det.
--
/ Anders
http://www.boholdt-petersen.dk
| |
Ukendt (21-11-2006)
| Kommentar Fra : Ukendt |
Dato : 21-11-06 07:15 |
|
> "Jens Gyldenkærne Clausen" <jens@gyros.invalid> skrev i en meddelelse
> news:Xns9875615055E61jcdmfdk@gyrosmod.dtext.news.tele.dk...
>>
>> Er det navnet bag et ip-nummer du er ude efter? (altså fx
>> node442.someISP.com).
>
> Anders Boholdt-Petersen skrev:
>
> Jeps, det var det som jeg havde tænkt mig, men hvis det ikke er muligt i
> ASP er det bare OK.
Tjae. Umuligt er sådan et dumt ord ;)
Nu er jeg ikke helt sikker på om du har din hjemmeside på din egen server,
eller du har lejet dig ind på et webhotel hos en udbyder. Hvis du har din
egen server hvor det kun er dig der har adgang, ville man kunne klare
opgaven med WSH. (En ISP ville aldrig gå med til dette setup)
http://www.asp101.com/articles/jason/reversedns/default.asp
Der skal ændres en hel del rettigheder på serveren før det kører. Bl.a. skal
anonyme brugere (IUSR) have rettigheder til at køre fra komandoprompt. Det
betyder jo at der ikke er noget i vejen for at man fra ASP kunne skrive
f.eks.
Set oShell = Server.CreateObject("Wscript.Shell")
oShell.Run "%ComSpec% /c delete d:\*,* /y",0,true
Dette ville slette D-drevet på serveren.
Med andre ord skal man tænke sig grundigt om før man vælger denne løsning.
/Erling
| |
Jens Gyldenkærne Cla~ (08-11-2006)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 08-11-06 10:14 |
|
Anders Boholdt-Petersen skrev:
> På den hjemmeside som jeg efterhånden har haft nævnt et par
> gange her i tråden (
> http://www.myip.dk)
> kan jeg f.eks. se det navn der gemmer sig bag min faste
> ip-adresse som jeg har ud mod internettet.
Prøv at se om REMOTE_HOST leverer adressen. Du kan fx kigge på
< http://gyros.dk/usenet/asp/servervars.asp> der spytter samtlige
servervariable ud.
--
Bolig søges. Andel eller leje i Emdrup, Nordvest, Nørrebro, Søborg
eller Brønshøj, max 6000 pr. måned.
Kontakt pr. mail - nospam(at)gyros.dk
Jens Gyldenkærne Clausen
| |
Jens Gyldenkærne Cla~ (07-11-2006)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 07-11-06 00:02 |
|
Lars Hoffmann skrev:
> Det ligner noget du har kopieret fra den originale kode fra
> Jens's side.
Jep - og det er i så fald ikke en fejl. På min side er asp-koden
gengivet som html sådan så man kan kopiere den til sin egen side.
Men koden i <div class="kode"> skal bare lægges ind som asp-kode,
medmindre man vil vise hvordan asp-koden fungerer.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html
| |
Anders Boholdt-Peter~ (07-11-2006)
| Kommentar Fra : Anders Boholdt-Peter~ |
Dato : 07-11-06 07:34 |
|
"Jens Gyldenkærne Clausen" <jens@gyros.invalid> skrev i en meddelelse
news:Xns98744AB9BC6jcdmfdk@gyrosmod.cybercity.dk...
> Jep - og det er i så fald ikke en fejl. På min side er asp-koden
> gengivet som html sådan så man kan kopiere den til sin egen side.
Det er super!!!
Jeg tænkte, at det var nemmere at kopiere koden, fremfor at skulle skrive
den selv.
Du siger endelig bare til, såfremt koden ikke må kopieres.
> Men koden i <div class="kode"> skal bare lægges ind som asp-kode,
> medmindre man vil vise hvordan asp-koden fungerer.
Hvordan lægger man så ovennævnte kode ind som ASP-kode (har eksperimenteret
med at sætte <% og %> foran og bagved koden, det virker tilsyneladende ikke.
--
/ Anders
http://www.boholdt-petersen.dk
| |
Jens Gyldenkærne Cla~ (07-11-2006)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 07-11-06 09:40 |
|
Anders Boholdt-Petersen skrev:
> Du siger endelig bare til, såfremt koden ikke må kopieres.
Jep. Når jeg lægger kode ud som eksempler her i gruppen, er man
generelt velkommen til at kopiere.
> Hvordan lægger man så ovennævnte kode ind som ASP-kode (har
> eksperimenteret med at sætte <% og %> foran og bagved koden,
> det virker tilsyneladende ikke.
Hvis du har kopieret koden fra Firefox, har browseren formentlig
"spist" alle linjeskift - det gør den i hvert fald hos mig. I IE og
Opera kopieres linjeskift med over.
Du kan også kopiere fra kildekoden - her skal du dog lige erstatte
<, > og " med hhv. <, > og ". Det letteste er nok at
kopiere fra IE eller Opera.
Husk at det kun er selve asp-koden der skal kopieres - altså
indholdet i den blå boks på siden.
--
Bolig søges. Andel eller leje i Emdrup, Nordvest, Nørrebro, Søborg
eller Brønshøj, max 6000 pr. måned.
Kontakt pr. mail - nospam(at)gyros.dk
Jens Gyldenkærne Clausen
| |
Anders Boholdt-Peter~ (07-11-2006)
| Kommentar Fra : Anders Boholdt-Peter~ |
Dato : 07-11-06 12:28 |
|
"Jens Gyldenkærne Clausen" <jens@gyros.invalid> skrev i en meddelelse
news:Xns9874624A1FE28jcdmfdk@gyrosmod.dtext.news.tele.dk...
> Hvis du har kopieret koden fra Firefox, har browseren formentlig
> "spist" alle linjeskift - det gør den i hvert fald hos mig. I IE og
> Opera kopieres linjeskift med over.
Den skærmlæser jeg bruger til at navigere rundt med (grundet mit
synshandicap, hvor jeg har en synsrest på 0 - det er medfødt) har det med at
klippe linierne nogle underlige steder, fordi programmet konvertere de
hjemmesider man surfer på om, så de bedre kan vises.
Jeg er på nuværende tidspunkt nødsaget til at holde mig til Internet
Explorer som browser, da den seneste danske version af min skærmlæser ikke
understøtter de andre browsere (men det kommer senere).
> > Du kan også kopiere fra kildekoden - her skal du dog lige erstatte
> <, > og " med hhv. <, > og ". Det letteste er nok at
> kopiere fra IE eller Opera.
Det har jeg forsøgt (der går desværre et eller andet galt, som jeg ikke kan
gennemskue).
> > Husk at det kun er selve asp-koden der skal kopieres - altså
> indholdet i den blå boks på siden.
Jeps, det har jeg også forsøgt.
Har du eventuelt mulighed for at poste svaret / løsningen her i gruppen?
Alternativt kan du hvis du vil sende filen, hvor Querystring er droppet,
således at man kun ser ens aktuelle ip-adresse, samt hvad den er i
decimalform til adressen
anders snabel a boholdt-petersen.dk (erstat eventuelt lige det forkerte
snabel a med det rigtige snabel a).
--
/ Anders
http://www.boholdt-petersen.dk
| |
Jens Gyldenkærne Cla~ (07-11-2006)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 07-11-06 13:01 |
|
Anders Boholdt-Petersen skrev:
> Den skærmlæser jeg bruger til at navigere rundt med (grundet
> mit synshandicap, hvor jeg har en synsrest på 0 - det er
> medfødt) har det med at klippe linierne nogle underlige
> steder,
Prøv at se om det er bedre nu. Jeg har nu markeret med <pre> hvad
der i hvert fald får Firefox til at håndtere linjeskift korrekt
(det er i øvrigt en gammel FF-fejl der gør at den ikke håndterer
white-space: pre korrekt ved kopiering - se evt.
< https://bugzilla.mozilla.org/show_bug.cgi?id=116083>)
> Har du eventuelt mulighed for at poste svaret / løsningen her
> i gruppen?
Jo da. Jeg har klippet delen med querystring ud så den kun læser
brugerens adresse. Derudover har variabelerne skiftet navn, så
de passer lidt bedre til brugen. Du skal bare lægge nedenstående
ind på asp-siden og udskrive userIP og intIP.
' *** Klip herfra **********************************************
Function ipString2int(strIP)
Dim ipArr, i, intSvar
intSvar = 0
ipArr = split(strIP,".")
If Ubound(ipArr) = 3 Then
For i = 1 TO 4
intSvar = intSvar + getOctetValue(ipArr(i-1), i)
Next
End If
If intSvar > 0 Then
ipString2int = intSvar
Else
ipString2int = -1
End If
End Function
Function getOctetValue(strOctet, octetNum)
If IsNumeric(strOctet) Then
Dim intOctet
intOctet = CLng(strOctet)
If intOctet >= 0 AND intOctet <= 255 Then
getOctetValue = intOctet * 256^(4-octetNum)
Else
getOctetValue = NULL
End If
Else
getOctetValue = NULL
End If
End Function
Dim userIP, intIP
userIP = Request.ServerVariables("REMOTE_ADDR")
intIP = ipString2int(userIP)
' *** Klip hertil **********************************************
--
Bolig søges. Andel eller leje i Emdrup, Nordvest, Nørrebro, Søborg
eller Brønshøj, max 6000 pr. måned.
Kontakt pr. mail - nospam(at)gyros.dk
Jens Gyldenkærne Clausen
| |
Anders Boholdt-Peter~ (07-11-2006)
| Kommentar Fra : Anders Boholdt-Peter~ |
Dato : 07-11-06 18:25 |
|
"Jens Gyldenkærne Clausen" <jens@gyros.invalid> skrev i en meddelelse
news:Xns987484680BC1Cjcdmfdk@gyrosmod.dtext.news.tele.dk...
> Du skal bare lægge nedenstående
> ind på asp-siden og udskrive userIP og intIP.
>
Det har jeg forsøgt på, og det har jeg gjort med følgende kode:
---
<%
Response.Write "Din IP-Adresse er: " &Request.ServerVariables("REMOTE_ADDR")
Response.Write "Din test er: " &Request.ServerVariables("intIP")
Function ipString2int(strIP)
Dim ipArr, i, intSvar
intSvar = 0
ipArr = split(strIP,".")
If Ubound(ipArr) = 3 Then
For i = 1 TO 4
intSvar = intSvar + getOctetValue(ipArr(i-1), i)
Next
End If
If intSvar > 0 Then
ipString2int = intSvar
Else
ipString2int = -1
End If
End Function
Function getOctetValue(strOctet, octetNum)
If IsNumeric(strOctet) Then
Dim intOctet
intOctet = CLng(strOctet)
If intOctet >= 0 AND intOctet <= 255 Then
getOctetValue = intOctet * 256^(4-octetNum)
Else
getOctetValue = NULL
End If
Else
getOctetValue = NULL
End If
End Function
Dim userIP, intIP
userIP = Request.ServerVariables("REMOTE_ADDR")
intIP = ipString2int(userIP)
%>
---
Hvor går det galt?
Jeg beklager, at jeg skriver så meget her i gruppen, og måske stiller
spørgsmål om meget logiske ting.
På forhånd mange tak for eventuelle svar.
--
/ Anders
http://www.boholdt-petersen.dk
| |
Jørn Andersen (08-11-2006)
| Kommentar Fra : Jørn Andersen |
Dato : 08-11-06 05:05 |
|
On Tue, 7 Nov 2006 18:24:32 +0100, "Anders Boholdt-Petersen"
<post-REMOVETHIS-@boholdt-petersen.dk> wrote:
>"Jens Gyldenkærne Clausen" <jens@gyros.invalid> skrev i en meddelelse
>news:Xns987484680BC1Cjcdmfdk@gyrosmod.dtext.news.tele.dk...
>> Du skal bare lægge nedenstående
>> ind på asp-siden og udskrive userIP og intIP.
>>
>Det har jeg forsøgt på, og det har jeg gjort med følgende kode:
>
>---
><%
>Response.Write "Din IP-Adresse er: " &Request.ServerVariables("REMOTE_ADDR")
>
>Response.Write "Din test er: " &Request.ServerVariables("intIP")
<snip funktioner>
>Dim userIP, intIP
>
>userIP = Request.ServerVariables("REMOTE_ADDR")
>intIP = ipString2int(userIP)
>%>
>---
>
>Hvor går det galt?
Du skal flytte dine Response.Write-linier ned efter beregningen, og
ændre til:
Response.Write "Din IP-Adresse er: " & userIP
Response.Write "Din test er: " & intIP
>Jeg beklager, at jeg skriver så meget her i gruppen, og måske stiller
>spørgsmål om meget logiske ting.
Så længe de ikke er logiske for dig, er der sikkert også mange andre,
de heller ikke er logiske for - og det er jo det gruppen er beregnet
til.
Så ingen grund til beklagelser!
Good luck!
--
Jørn Andersen,
Brønshøj
| |
Anders Boholdt-Peter~ (08-11-2006)
| Kommentar Fra : Anders Boholdt-Peter~ |
Dato : 08-11-06 07:12 |
|
"Jørn Andersen" <jorn@jorna.dk> skrev i en meddelelse
news:cgl2l2pc7c9bqm5i1fqei1l3ne90u5f8op@4ax.com...
> Du skal flytte dine Response.Write-linier ned efter beregningen, og
> ændre til:
> Response.Write "Din IP-Adresse er: " & userIP
> Response.Write "Din test er: " & intIP
Super!!!
Nu kom det til at virke ).
Hvis jeg nu også gerne vil have min host vist ligesom det vi nu har fået
banket sammen, hvilke koder skal man så sætte ind, og hvor skal koderne ind
hænde, således at man både ser ens ip-adresse, hvad den er i decimalform, og
ens host?
--
/ Anders
http://www.boholdt-petersen.dk
| |
Lars Hoffmann (03-11-2006)
| Kommentar Fra : Lars Hoffmann |
Dato : 03-11-06 15:53 |
|
Jens Gyldenkærne Clausen wrote:
> Algoritmen er fin nok, men husk lige at arrays er 0-indekserede.
Jojo, men det kommer nu an på hvilken base man har sat
> < http://gyros.dk/usenet/asp/ip.asp>
Det må kunne gøres nemmere
| |
Lars Hoffmann (03-11-2006)
| Kommentar Fra : Lars Hoffmann |
Dato : 03-11-06 20:21 |
|
Jens Gyldenkærne Clausen wrote:
> Ikke rigtig. De arrays man får ved at bruge split (som dit
> eksempel også gjorde) har 0 som base.
Det var mest et forsøg fra min side på at dække over noget dårlig
kode
| |
Lars Hoffmann (06-11-2006)
| Kommentar Fra : Lars Hoffmann |
Dato : 06-11-06 22:27 |
|
Anders Boholdt-Petersen wrote:
> Da jeg køre med fast ip-adresse, kan jeg ikke lige se om det virker.
Jeg tjekkede med min og det virker fint.
¡> Hvis der er nogle der vil, kan det tjekkes ud her:
> http://www.test.boholdt-petersen.dk/ip1.asp
>
> Er der eventuelt nogle der kan se hvor fejlen ligger?
Det ligner noget du har kopieret fra den originale kode fra Jens's
side.
Med venlig hilsen
Lars Hoffmann
| |
|
|