kostenloser Webspace werbefrei: lima-city


IP in Datenbank speichern

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    davy

    Kostenloser Webspace von davy

    davy hat kostenlosen Webspace.

    Hi !

    Wie kann ich die IP des Besuchers in meine Datenbank speichern?
    Müsste doch eigentlich so gehen:

    $ip                      = $_SERVER["REMOTE_ADDR"];


    INSERT INTO userdaten SET anmeldeip		= 	'".$ip."',


    Ist da was falsch? Bei mir funktioniert das nicht


    Mfg

    Beitrag zuletzt geändert: 15.2.2010 8:20:38 von davy
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Der INSERT-Befehl ist falsch:

    Willst du einen neuen Datensatz einfügen (also eine neue Zeile), dann musst du INSERT verwenden. Dies sieht dann wie folgt aus:

    INSERT INTO userdaten (anmeldeip) VALUES ('"$ip"').

    Oder du willst die IP einfach nur überschreiben, dann musst du UPDATE verwenden:

    UPDATE userdaten SET anmeldeip = '".$ip."' .

    Das ganze muss dann noch in mysql_query() eingebunden werden.
  4. Autor dieses Themas

    davy

    Kostenloser Webspace von davy

    davy hat kostenlosen Webspace.

    feng-shui schrieb:
    Der INSERT-Befehl ist falsch:

    Willst du einen neuen Datensatz einfügen (also eine neue Zeile), dann musst du INSERT verwenden. Dies sieht dann wie folgt aus:

    INSERT INTO userdaten (anmeldeip) VALUES ('"$ip"').

    Oder du willst die IP einfach nur überschreiben, dann musst du UPDATE verwenden:

    UPDATE userdaten SET anmeldeip = '".$ip."' .

    Das ganze muss dann noch in mysql_query() eingebunden werden.


    Ich habe in dem Query schon andere Sachen:

    $db->Query("INSERT INTO userdaten SET 
    								username 		= 	'".$username."', 
    								kid 			= 	'".$kid."', 
    								passwort 		= 	'".$pass."', 
    								nachname 		= 	'".$nn."', 
    								vorname 		= 	'".$vn."', 
    								email 			= 	'".$mail."', 
    								activated 		= 	'".$activated."', 
    								Aktiv 			= 	'1', 
    								guthaben 		= 	'0', 
    								klicks 			= 	'0', 
    								klickpunkte 	        = 	'0',
    								aktivierungscode = 	'".$aktivierungscode."'
    								ip                                    = '".$ip."'


    Erst seitdem ich IP drin habe, kommt ein Fehler
  5. Das INSERT Statement ist so tatsächlich auch gültig, allerdings hast Du am Ende anscheinend vergessen, den String richtig abzuschließen (es fehlt ein " am Ende). Du kannst den String ohnehin ein wenig einfacher schreiben, da " unter PHP ja immer noch die Auflösung von Variablen zulässt. Du kannst die Variablen direkt in den mit " abgeschlossenen String hineinschreiben:
    "INSERT INTO userdaten SET 
    	username	= '$username', 
    	kid 	= '$kid', 
    	passwort 	= '$pass', 
    	nachname 	= '$nn', 
    	vorname 	= '$vn', 
    	email 	= '$mail', 
    	activated	= '$activated', 
    	Aktiv 	= 1, 
    	guthaben 	= 0, 
    	klicks	= 0, 
    	klickpunkte	= 0,
    	aktivierungscode= '$aktivierungscode'
    	ip              = '$ip'"

    Üblicher ist allerdings die Schreibweise mit VALUES () usw.:
    "INSERT INTO userdaten 
    (username,kid,passwort,nachname,vorname,email,activated,Aktiv,guthaben,klicks,klickpunkte,aktivierungscode,ip)
    VALUES ('".join("','",array($username,$kid,$pass,$nn,$vn,$mail,$activated,1,0,0,0,$aktivierungscode,$ip))."')"

    Über den join-befehl werden auch die numerischen Werte in ' eingeschlossen, aber das stört MySQL eigentlich wenig...




    Beitrag zuletzt geändert: 15.2.2010 9:34:02 von cars-ten
  6. Autor dieses Themas

    davy

    Kostenloser Webspace von davy

    davy hat kostenlosen Webspace.

    cars-ten schrieb:
    Das INSERT Statement ist so tatsächlich auch gültig, allerdings hast Du am Ende anscheinend vergessen, den String richtig abzuschließen (es fehlt ein " am Ende). Du kannst den String ohnehin ein wenig einfacher schreiben, da " unter PHP ja immer noch die Auflösung von Variablen zulässt. Du kannst die Variablen direkt in den mit " abgeschlossenen String hineinschreiben:
    "INSERT INTO userdaten SET 
    	username	= '$username', 
    	kid 	= '$kid', 
    	passwort 	= '$pass', 
    	nachname 	= '$nn', 
    	vorname 	= '$vn', 
    	email 	= '$mail', 
    	activated	= '$activated', 
    	Aktiv 	= 1, 
    	guthaben 	= 0, 
    	klicks	= 0, 
    	klickpunkte	= 0,
    	aktivierungscode= '$aktivierungscode'
    	ip              = '$ip'"

    Üblicher ist allerdings die Schreibweise mit VALUES () usw.:
    "INSERT INTO userdaten 
    (username,kid,passwort,nachname,vorname,email,activated,Aktiv,guthaben,klicks,klickpunkte,aktivierungscode,ip)
    VALUES ('".join("','",array($username,$kid,$pass,$nn,$vn,$mail,$activated,1,0,0,0,$aktivierungscode,$ip))."')"

    Über den join-befehl werden auch die numerischen Werte in ' eingeschlossen, aber das stört MySQL eigentlich wenig...





    Danke !
  7. kalinawalsjakoff

    Kostenloser Webspace von kalinawalsjakoff

    kalinawalsjakoff hat kostenlosen Webspace.

    Nun ich möchte mal auf einen Artikel in der aktuellen C't hinweisen. IP's gelten als Personenbezogene Daten und dürfen von Privaten Websiteanbietern nicht gespeichert werden. Sie müssen von daher vorher anonymisiert werden. Fals es doch irgendwie aufgedeckt wird kannst du mit Bußgeldern belegt werden.

    Zumindestens währe dann eine Info auf deiner Website (beispielsweise im IMpressum) empfehlenswert so daß du dich eventuell aus Juristischen Folgen herauswinden kannst.

    Beitrag zuletzt geändert: 15.2.2010 10:06:20 von kalinawalsjakoff
  8. kalinawalsjakoff schrieb:
    Nun ich möchte mal auf einen Artikel in der aktuellen C't hinweisen. IP's gelten als Personenbezogene Daten und dürfen von Privaten Websiteanbietern nicht gespeichert werden. Sie müssen von daher vorher anonymisiert werden. Fals es doch irgendwie aufgedeckt wird kannst du mit Bußgeldern belegt werden.


    IP's gelten zwar als Personenbezogene Daten, dürfen aber sehrwohl gespeichert werden, solange Sie nicht mit anderen Personenbezogenen Daten in Verbindung gebracht werden können. zB: IP-Sperre für Counter
  9. Interessante Diskussion!

    Wie sieht es denn aus, wenn ich mich mit meinem Gästebuch vor unflätigen Äußerungen bestimmter Besucher schützen möchte? Ich darf also nicht versuchen, herauszufinden, WER mich fortwährend diffamiert, sondern muss mir das einfach gefallen lassen?!?

    (In meinem Gästebuch weise ich übrigens darauf hin, dass die IP des Eintragers gespeichert wird.)
  10. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!