Avatar billede ascii Nybegynder
29. april 2002 - 14:49 Der er 7 kommentarer og
1 løsning

Tjekke IP i database

Har lige et ?
Jeg har en tabel  "ipadresse" i min database med 2 kolonner "minip" "maxip".
Når en bruger sender en request til min Web-server, skal der undersøges om vedkommendes IP er i databasen.
Grunden til der er kolonner er, at der er brugere der benytter dynamisk ip.
Hvis brugerne har statisk ip stå IP-adressen i begge kolonner.

Hvordan gøres dette??

Avatar billede fri-hash Nybegynder
29. april 2002 - 15:13 #1
hvis du har ipadressen i variablen $ip:
select * from ipadresse where minip<=$ip and maxip>=$ip

hvis der returneres mere end 0 rækker findes ip'en i databasen
Avatar billede ascii Nybegynder
29. april 2002 - 15:18 #2
Prøver det lige senere.. By the way, så er det Java (JSP) jeg anvender!!
Avatar billede disky Nybegynder
30. april 2002 - 13:01 #3
fri-hash:
Det er en frygtelig arogant holdning du fremviser, ved bare at poste noget php specifikt kode.
Denne gruppe er om MYSQL og ikke php, derfor svarer man selvfølgelig MYSQL specifikt !

ascii:
Siden fri-hash tror dette er en php gruppe poster jeg lige noget JSP kode der gør det for dig.

Jeg forudsætter du har en dbhandler klasse hvor objektet hedder 'dbHandler' og den har en metode der hedder executeQuery().
Samtidigt forudsætter jeg din ip er gemt som et tal. (integer)

private boolean checkIp(int ip)
{
  String query="select * from ipadresse where minip<="+ip+" and maxip>=+"ip";
  ResultSet res=dbHandler.executeQuery(query);
  if(res.hasNext())
  {
    return true;
  }
  return false;
}


metoden returnerer true hvis ip'en er gyldig.

p.s. har ikke kompilet koden, så der tages forbehold for tastefejl.
Avatar billede fri-hash Nybegynder
30. april 2002 - 13:17 #4
slap dog lige af, disky - det er da vist dig der har en arrogant holdning, at svine folk til på den måde

dette var hvad du skulle poste i JSP for at det skulle svare til mit
select * from ipadresse where minip<="+ip+" and maxip>=+"ip"

og jeg tror at begge dele er til at forstå hvis man kan lidt sql


...så fald lige ned af den imaginære kongetrone du har sat dig selv på og tag en slapper !!!
Avatar billede disky Nybegynder
30. april 2002 - 13:27 #5
fri-hash:
Nej jeg er ikke arogant.

Jeg er bare MEGET træt af at folk konstant poster php kode her i gruppen, hvor det IKKE hører hjemme.

Lær at respekter at denne gruppe er om MYSQL og kun MYSQL.
Avatar billede fri-hash Nybegynder
30. april 2002 - 13:36 #6
der er et $-tegn i en SQL-STATEMENT
..for at angive at her skal man placere en variabel/værdi der indeholder den ip-værdi man leder efter - fjols
Avatar billede disky Nybegynder
30. april 2002 - 14:27 #7
fri-hash:
Ja det er typisk personer som dig, når de får kritik begynder de helt usagligt at svine folk til.

Man bruger ikke $ i en sql sætning, ihvertefalde ikke på den måde du har beskrevet. Din kode er php kode, hvor man jo bruger $ for at angive at det næste er en varible.

Opgave stilleren beskrev TYDELIGT at det var JSP han brugte, derfor er PHP's måde at gøre tingene på rimeligt irelevant. Derfor prøv at gør dig selv og mange andre den tjenste at læs spørgsmålet for du svarer.

p.s. Det er menneskeligt at fejle, men endnu mere menneskeligt at indrømme man har begået en fejl. (HINT HINT)
Avatar billede disky Nybegynder
30. april 2002 - 14:29 #8
som jeg lige skrev er det menneskelig at indrømme fejl.

SÅ det vil jeg lige gøre.

Det med JSP kom fra et andet spørgsmål sorry.

Stadigvæk er det dog ikke relevant bare at poste php kode i en MYSQL gruppe.
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
Computerworld tilbyder specialiserede kurser i database-management

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