mysql: kolumn med autoifyllt ip-nummer?

Konfiguration av nätverk, hur man använder Ubuntu som server, och håller sin dator säker
andol
Inlägg: 3093
Blev medlem: 31 dec 2007, 00:19
OS: Ubuntu
Utgåva: 23.10 Mantic Minotaur

mysql: kolumn med autoifyllt ip-nummer?

Inlägg av andol »

Finns det något sätt att få en kolumn i en MySQL tabell att automatisk fyllas med ip-numret för den klient som lagrade posten/raden ifråga?

Det är alltså MySQL-servern som ska notera varifrån anslutningen kom och på egen hand peta hand peta in det värdet i kolumnen då en ny rad insertas. Tänker mig ett beteende inte helt olikt den där en kolumn automatiskt fyllas med en timestamp.

Utifrån vad jag kan läsa mig till i MySQL:s dokumentation så finns det inget trivialt sätt att åstadkomma detta på? Måhända så att någon känner till ett lite listigare och kreativare lösning?
Användarvisningsbild
maths57
Inlägg: 2911
Blev medlem: 22 jun 2007, 15:10
OS: Ubuntu
Utgåva: 22.10 Kinetic Kudu
Ort: Stockholm

Re: mysql: kolumn med autoifyllt ip-nummer?

Inlägg av maths57 »

Skjuter vilt! Jag vet att man i JavaScript kan få fram det IP-nummer besökaren har. Borde det inte finnas även i PHP? I så fall borde det väl gå att skriva en lite kodsnutt som följer med in i MySQL? Eller?
Användarvisningsbild
Thomas
Inlägg: 320
Blev medlem: 07 jan 2006, 02:01
OS: Ubuntu
Utgåva: 23.04 Lunar Lobster
Ort: malmö

Re: mysql: kolumn med autoifyllt ip-nummer?

Inlägg av Thomas »

det går att fånga upp ip-nummer med php. gjorde en besöksräknare för ett par år sen i php o mysql.. ska se om jag har kvar den på server.
Användarvisningsbild
mcNisse
Inlägg: 5211
Blev medlem: 06 feb 2007, 20:51
OS: Debian
Utgåva: Vet inte/ingen utgåva passar

Re: mysql: kolumn med autoifyllt ip-nummer?

Inlägg av mcNisse »

Det borde gå. När man kör mysql administrator kan ju se ipadresser för de uppkopplingar som finns.
Jag tycker att det borde gå att skapa en trigger som lägger in informationen när man gör insert/udate... men jag har inte testat och har ingen aning om vilken tabell man ska slå i för att få fram informationen. Det finns ett kommando
show processlist
som listar processer...
andol
Inlägg: 3093
Blev medlem: 31 dec 2007, 00:19
OS: Ubuntu
Utgåva: 23.10 Mantic Minotaur

Re: mysql: kolumn med autoifyllt ip-nummer?

Inlägg av andol »

maths57 & Thomas: Tror nog att ni missuppfattade min fråga lite lätt. Själva magin ska alltså ske i själva mysqld och det är mysql-clientens ip-nummer, inte någon webbesökare, jag är ute efter. Tack i alla fall.

mcNisse: Jo, på något sätt tycker man att det borde gå. Som du säger så håller mysqld uppenbarligen koll på varifrån en uppkoppling kommer ifrån. Om inte annat så är det ju ett kriterie i authentiseringen. Antagligen har du rätt i lösningen ligger i att använda triggers, vilket förövrigt är ett område där jag är helt grön. Sålunda dags att lära sig något nytt :-)
Användarvisningsbild
Iceron
Inlägg: 387
Blev medlem: 22 jun 2007, 21:16
OS: Ubuntu
Utgåva: 12.04 Precise Pangolin LTS
Kontakt:

Re: mysql: kolumn med autoifyllt ip-nummer?

Inlägg av Iceron »

Kod: Markera allt

<?php

$ip = $_SERVER['REMOTE_ADDR'];

$connect = mysql_connect('localhost', 'user, 'pass');
mysql_select_db('raknare');
$sql = mysql_query("
SELECT * FROM raknare WHERE ip = '".$ip."'
");
if (mysql_num_rows($sql) == 0) {
$sqlrakna = mysql_query("
INSERT raknare (ip)
VALUES ('$ip')
");
php?>
Den där hittade jag i någon gammal sida jag hadde liggandes :P
hoppas den kommer till användning!
(inte jag som skrivit den btw)
Användarvisningsbild
Thomas
Inlägg: 320
Blev medlem: 07 jan 2006, 02:01
OS: Ubuntu
Utgåva: 23.04 Lunar Lobster
Ort: malmö

Re: mysql: kolumn med autoifyllt ip-nummer?

Inlägg av Thomas »

jag vet inte..men skulle gisssa på att ip-nummer och sånt logars i någon log fil till mysql, hittar man bara rätt fil så skulle man kunna köra ett script som körs en gång i halvtimmen eller nått och importera dom där i från till en tabel eller liknade..
Användarvisningsbild
maths57
Inlägg: 2911
Blev medlem: 22 jun 2007, 15:10
OS: Ubuntu
Utgåva: 22.10 Kinetic Kudu
Ort: Stockholm

Re: mysql: kolumn med autoifyllt ip-nummer?

Inlägg av maths57 »

andol skrev:Finns det något sätt att få en kolumn i en MySQL tabell att automatisk fyllas med ip-numret för den klient som lagrade posten/raden ifråga?
Låter du besökarna ansluta direkt till MySQL? Jag vet att programmet kan se ip-adresser om man försöker ansluta direkt till databasen. Annars brukar man väl ha något skript som sköter kontakten mellan webbsidan och databasen.
andol
Inlägg: 3093
Blev medlem: 31 dec 2007, 00:19
OS: Ubuntu
Utgåva: 23.10 Mantic Minotaur

Re: mysql: kolumn med autoifyllt ip-nummer?

Inlägg av andol »

maths57 skrev:Låter du besökarna ansluta direkt till MySQL? Jag vet att programmet kan se ip-adresser om man försöker ansluta direkt till databasen. Annars brukar man väl ha något skript som sköter kontakten mellan webbsidan och databasen.
Detta rör sig inte om en webbapplikation. Begreppet besökare är inte riktigt tillämpbart i sammanhanget.
Skriv svar

Återgå till "Nätverk, säkerhet och servrar"