IP Adresse durch JavaScript
Marc Denzer
- javascript
Guten Tag,
ich hätte eine Frage zu JavaScript:
Ist es möglich durch JavaScript die IP Adresse des jenigen heraus zu bekommen, der die Internetseite besucht? Ich möchte bei einem Formular auf meiner Homepage (sichtbar oder unsichtbar) die IP Adresse des Absenders mitsenden um Missbrauch zu verhindern. Mein Provider hat mir bestätigt, dass es mit JavaScript möglich ist, konnte mir aber den genauen Befehl nicht sagen, deshalb wende ich mich nun an Sie.
Vielen Dank für Ihre Hilfe
Marc Denzer
nich mit javascript.
nich mit javascript.
Hallo Alle,
nicht direkt mit Javascript, aber durch die Hintertür:
Man richtet ein Frameset ein. Eins der Frames ist so klien, dann man es nicht sehen kann. Jetzt löst man ein Submit an irgendeinen netten Server auf Dieser Welt aus Target das unsichtbare Frame). Der schickt die gewünschten Daten zurück. In dem netten Frameset steht irgendwas mit onLoad=" "
Die IP steht nun in der Seite zur Verfügung.
Der Swerver müßte nur so nett sein folgendes Frame zurückzugeben:
<!-- ----getIP.php--- -->
<html>
<head>
</head>
<body>
<?
echo "<form action='#' name='userData'>";
echo "<input type='hidden' name='IP' ID='IP' value='".$REMOTE_ADDR."'>";
echo "</form>;
?>
</body>
</html>
Den Dienst findest Du ab sofort unter http://bitworks.de/tools/getIP.php
Vielleicht sollten wir Antje bitten, mal den JavaScript-Teil dazu zu schreiben. Das raff ich noch nicht, bestenfalls für den M$IE...
Gruß
Tom
Hi, kleine Anmerkung am Rande:
<!-- ----getIP.php--- -->
Das ist illegal. Ein Kommentar endet mit --, also wird das hier einen Validierungsfehler erzeugen. Andere Zeichen wie * oder ~ schmücken genauso schön, nimm doch diese.
Hi, kleine Anmerkung am Rande:
<!-- ----getIP.php--- -->
Das ist illegal. Ein Kommentar endet mit --, also wird das hier einen Validierungsfehler erzeugen. Andere Zeichen wie * oder ~ schmücken genauso schön, nimm doch diese.
Tut mir leid, das verstehe ich jetzt nicht.
Kommentaranfang <!--
Kommentarende -->
Oder?
<!-- Inhalt der Datei -->
Das stammt aus SelfHTML
Mit meiner Schreibweise habe ich noch nie Fehler bekommen.
Allerdings würde ich sie auch gerne vermeiden
Gruß
Tom
Hallo,
nicht direkt mit Javascript, aber durch die Hintertür:
Man richtet ein Frameset ein. Eins der Frames ist so klien, dann man es nicht sehen kann. Jetzt löst man ein Submit an irgendeinen netten Server auf Dieser Welt aus Target das unsichtbare Frame). Der schickt die gewünschten Daten zurück. In dem netten Frameset steht irgendwas mit onLoad=" "
Dazu braucht man kein Frameset und kein Formular. Probiere es mal so:
js_ip.php
<?php
Header("Content-type: text/javascript");
$ip=$HTTP_SERVER_VARS["REMOTE_ADDR"];
print "var ip="$ip";\n";
?>
function getIP()
{
alert("IP: "+ip);
// oder document.write("IP: "+ip);
}
Testdokument:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Test by TM 03/02</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript" src="http://localhost/js_ip.php" type="text/javascript"></script>
</head>
<body onload="getIP()">
</body>
</html>
MfG, Thomas
Hallo,
nicht direkt mit Javascript, aber durch die Hintertür:
Man richtet ein Frameset ein. Eins der Frames ist so klien, dann man es nicht sehen kann. Jetzt löst man ein Submit an irgendeinen netten Server auf Dieser Welt aus Target das unsichtbare Frame). Der schickt die gewünschten Daten zurück. In dem netten Frameset steht irgendwas mit onLoad=" "
Dazu braucht man kein Frameset und kein Formular. Probiere es mal so:
js_ip.php
<?php
Header("Content-type: text/javascript");
$ip=$HTTP_SERVER_VARS["REMOTE_ADDR"];
print "var ip="$ip";\n";
?>
function getIP()
{
alert("IP: "+ip);
// oder document.write("IP: "+ip);
}
Testdokument:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Test by TM 03/02</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript" src="http://localhost/js_ip.php" type="text/javascript"></script>
</head>
<body onload="getIP()">
</body>
</html>
MfG, Thomas
Hallo Thomas, machen wir doch das Thomas-Forum auf :-)
heißt das, das man dem Header-Befehl in ein vorhandenes Formular Daten nachladen kann ohne, dass das Formular auf dem Bildschirm zuckt?
Allerdings kann man nicht den Localhost bemühen, weil auf den Clients der Leute üblicherweise kein PHP läuft. Was müsste man jetzt also wo unterbringen, dass es klappt?
Gruß
Tom
Hallo,
heißt das, das man dem Header-Befehl in ein vorhandenes Formular Daten nachladen kann ohne, dass das Formular auf dem Bildschirm zuckt?
Verstehe ich nicht.
Es funktioniert doch wie von mir beschrieben.
Allerdings kann man nicht den Localhost bemühen, weil auf den Clients der Leute üblicherweise kein PHP läuft. Was müsste man jetzt also wo unterbringen, dass es klappt?
Zum lokalen Testen habe ich http://localhost/... verwendet und es kommt 127.0.0.1 zurueck. Man braucht natuerlich einen externen Webserver mit PHP-Unterstuetzung, also z. B.:
http://www.adres.se/.../js_ip.php
MfG, Thomas
Hallo,
heißt das, das man dem Header-Befehl in ein vorhandenes Formular Daten nachladen kann ohne, dass das Formular auf dem Bildschirm zuckt?
Verstehe ich nicht.
Es funktioniert doch wie von mir beschrieben.
Allerdings kann man nicht den Localhost bemühen, weil auf den Clients der Leute üblicherweise kein PHP läuft. Was müsste man jetzt also wo unterbringen, dass es klappt?
Zum lokalen Testen habe ich http://localhost/... verwendet und es kommt 127.0.0.1 zurueck. Man braucht natuerlich einen externen Webserver mit PHP-Unterstuetzung, also z. B.:
http://www.adres.se/.../js_ip.php
Hallo Thomas,
Das ist ja genial,
muss ich mich unbedingt noch mit beschäftigen.
Ich habe das Server-Script in der alert-Variante unter bitworks.de/tools/alertIP.php abgelegt und mit der Document-Variante unter bitworks.de/tools/docwriteIP.php
Nun würde es mich interessieren, ob ich auf diese Weise auch noch Werte vom Server übertragen kann in ein vorhandenes Dokument.
Sodass man die dann darin abfragen kann
Grüße aus BS
Tom
Hallo,
Nun würde es mich interessieren, ob ich auf diese Weise auch noch Werte vom Server übertragen kann in ein vorhandenes Dokument.
Praktisch alles, was man mittels $HTTP_SERVER_VARS[] bzw. neuer $_SERVER[] so abfragen kann, siehe: http://www.php.net/manual/en/reserved.variables.php#reserved.variables.server.
MfG, Thomas
Hallo,
Nun würde es mich interessieren, ob ich auf diese Weise auch noch Werte vom Server übertragen kann in ein vorhandenes Dokument.
Praktisch alles, was man mittels $HTTP_SERVER_VARS[] bzw. neuer $_SERVER[] so abfragen kann, siehe: http://www.php.net/manual/en/reserved.variables.php#reserved.variables.server.
Hai Thomas,
da hast Du mich jetzt leicht missverstanden.
Angenommen, ich habe ein Formular mit input-Feldern in einem Frame und löse ein submit() aus, kann ich dann in die vorhandene Site noch Werte holen vom Server, z.B.mit einer Datenbankabfrage?
Ich will nur nicht die ganze Site oder das Frame neu laden.
Die Daten sollen dann nur als JavaScript-Variablen im Dokument vorhanden sein.
Gruß
Tom
Hallo nochmals,
vielen Dank für die Hilfe, ich habe die beiden Quelltexte (js_ip.php und das HTML) Dokument genau so übernommen, bekomme beim Ausführen allerdings immer den Fehler "JavaScript: Primärausdruck erwartet", wobei dieser Teil im Quelltext der js_ip.php Datei markiert ist:
<?php
Header("Content-type: text/javascript");
$ip=$HTTP_SERVER_VARS["REMOTE_ADDR"];
print "var ip="$ip";\n";
?>
Die passiert in drei von mir getesteten Browsern.
Vielen Dank
MARC
Hallo,
Ist es möglich durch JavaScript die IP Adresse des jenigen heraus zu bekommen, der die Internetseite besucht? Ich möchte bei einem Formular auf meiner Homepage (sichtbar oder unsichtbar) die IP Adresse des Absenders mitsenden um Missbrauch zu verhindern. Mein Provider hat mir bestätigt, dass es mit JavaScript möglich ist, konnte mir aber den genauen Befehl nicht sagen, deshalb wende ich mich nun an Sie.
Was ist denn das für ein Provider, der sowas behauptet?
In JavaScript ist es nicht möglich die IP auszulesen.
Aber sobald das Formular an ein Verarbeitungs Script geschickt wird, kann dieses die IP ermitteln.
z.B. ein PHP Script, oder Perl, oder ...
Gruß
ueps
Hallo,
Ist es möglich durch JavaScript die IP Adresse des jenigen heraus zu bekommen, der die Internetseite besucht? Ich möchte bei einem Formular auf meiner Homepage (sichtbar oder unsichtbar) die IP Adresse des Absenders mitsenden um Missbrauch zu verhindern. Mein Provider hat mir bestätigt, dass es mit JavaScript möglich ist, konnte mir aber den genauen Befehl nicht sagen, deshalb wende ich mich nun an Sie.
Was ist denn das für ein Provider, der sowas behauptet?
In JavaScript ist es nicht möglich die IP auszulesen.
Aber sobald das Formular an ein Verarbeitungs Script geschickt wird, kann dieses die IP ermitteln.
z.B. ein PHP Script, oder Perl, oder ...
Gruß
ueps
Strato meinte, dass dies mit JavaScript möglich wäre, nun stelle ich fest, dass dies nicht funktioniert, habe aber herausgefunden, dass es mit java gehen soll, kann mir da jemand helfen?
Vielen Dank
MARC
Moin!
Ist es möglich durch JavaScript die IP Adresse des jenigen heraus zu bekommen, der die Internetseite besucht? Ich möchte bei einem Formular auf meiner Homepage (sichtbar oder unsichtbar) die IP Adresse des Absenders mitsenden um Missbrauch zu verhindern. Mein Provider hat mir bestätigt, dass es mit JavaScript möglich ist, konnte mir aber den genauen Befehl nicht sagen, deshalb wende ich mich nun an Sie.
Naja, daß man mit Javascript nicht direkt die IP herausfinden kann, und weiterhin daß Strato einen Müllsupport hat, der auch nichts weiß, ist mittlerweile geklärt.
Die spannende Frage ist aber: Du willst Mißbrauch verhindern. Das ist ja im Prinzip sehr schön, aber die Fragen seien gestellt:
1. Welchen Mißbrauch willst du verhindern?
2. Wie willst du das verhindern?
3. Warum glaubst du, daß Javascript da helfen könnte?
Denk dran: Alles Javascript wird im benutzereigenen Browser ausgeführt. Das bedeutet: Der Benutzer kann das Javascript beliebig manipulieren, um deine Kontrollmechanismen auszuschalten. Solange der Server selbst den Mißbrauch (von dem immer noch nicht bekannt ist, was genau das ist) nicht verhindert, hilft dir dein Javascript und die IP-Adresse garnichts.
- Sven Rautenberg