IP-Adresse auf Hompage herausfinden
Wie kann man einen User erreichen, der gerade auf der eigenen Homepage oder im eigenen Forum unterwegs ist.
Hallo,
ich betreibe eine Homepage und ein Forum. Dieses Forum wird recht regelmäßig besucht. Ich suche nach einer Möglichkeit dem Besucher in Echtzeit eine Nachricht zu kommen zu lassen.
Meine Idee war: Die IP-Adresse des Besuchers ermitteln, dann an diese IP eine Nachricht zu schicken. Die Nachricht soll eine Textnachricht sein.
Ist dies umsetzbar? Ist dies rechtlich überhaupt zulässig?
Wenn ja, wie ist das möglich.
Betriebssystem ist XP; Hompage über einen namenhaften Provider und Forum ebenfalls.
Vielen Dank
Gruß Twoballs
Hallo,
ich betreibe eine Homepage und ein Forum. Dieses Forum wird recht regelmäßig besucht. Ich suche nach einer Möglichkeit dem Besucher in Echtzeit eine Nachricht zu kommen zu lassen.
Meine Idee war: Die IP-Adresse des Besuchers ermitteln, dann an diese IP eine Nachricht zu schicken. Die Nachricht soll eine Textnachricht sein.
Ist dies umsetzbar? Ist dies rechtlich überhaupt zulässig?
Wenn ja, wie ist das möglich.
Betriebssystem ist XP; Hompage über einen namenhaften Provider und Forum ebenfalls.
Vielen Dank
Gruß Twoballs
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 21242
Url: https://administrator.de/contentid/21242
Ausgedruckt am: 18.11.2024 um 19:11 Uhr
10 Kommentare
Neuester Kommentar
Gegenfrage, warum reicht es nicht aus ein Pop-Up oder so zu öffnen mit "Hallo User XY, es ist 7:30 und Du bist früh auf" oder so ?
Ich würde massiv was dagegen haben, wenn jemand versucht einfach so mal eine Text-Datei auf dem Rechner abzulegen.
P.S. oder sollte die Meldung so eine der Art "Dies ist der Inhalt Deiner Festplatte sein ?"
Ich würde massiv was dagegen haben, wenn jemand versucht einfach so mal eine Text-Datei auf dem Rechner abzulegen.
P.S. oder sollte die Meldung so eine der Art "Dies ist der Inhalt Deiner Festplatte sein ?"
Hallo,
das mit dem Senden an die IP-Adresse ist nicht wirklich möglich. Die IP-Adresse eines Besuchers zu bekommen ist leicht, die kannst du z.B. in einem PHP-Skript einfach aus der entsprechenden Umgebungsvariable auslesen. Nur wenn du da was hinsendest wirst du in den meisten Fällen an einem NAT oder einer Firewall scheitern, sprich die Nachricht wird den Rechner nicht erreichen. Aber selbst wenn sie das würde, dann müsste dort ein Programm laufen, das die Nachricht entgegennimmt und anzeigt. Da ging früher mal der Windows Nachrichtendienst, nachdem der aber ständig von Spammern genutzt wurde ist der fast überall deaktiviert.
Kurz zusammengefasst: wenn die Nutzer nicht extra ein Programm installieren müssen sollen, dann ist es de fakto nicht möglich einen vom Server initiierten Nachrichtenaustausch durchzuführen. Aber man kann den Nutzer dazu bringen ständig nachzufragen (zumindest solange er deine Website noch offen hat): dazu machst du in einem Frame einen sehr kleinen Frame, der sich alle 20 sek. neu lädt (META-Refresh). Auf der Serverseite prüft ein Skript bei jeder Anfrage, ob für den Nutzer eine Mitteilung vorliegt, und zeigt diese gegebenfalls an. Oder natürlich man nimmt einfach eine eMail-Benachrichtigung.
Filipp
das mit dem Senden an die IP-Adresse ist nicht wirklich möglich. Die IP-Adresse eines Besuchers zu bekommen ist leicht, die kannst du z.B. in einem PHP-Skript einfach aus der entsprechenden Umgebungsvariable auslesen. Nur wenn du da was hinsendest wirst du in den meisten Fällen an einem NAT oder einer Firewall scheitern, sprich die Nachricht wird den Rechner nicht erreichen. Aber selbst wenn sie das würde, dann müsste dort ein Programm laufen, das die Nachricht entgegennimmt und anzeigt. Da ging früher mal der Windows Nachrichtendienst, nachdem der aber ständig von Spammern genutzt wurde ist der fast überall deaktiviert.
Kurz zusammengefasst: wenn die Nutzer nicht extra ein Programm installieren müssen sollen, dann ist es de fakto nicht möglich einen vom Server initiierten Nachrichtenaustausch durchzuführen. Aber man kann den Nutzer dazu bringen ständig nachzufragen (zumindest solange er deine Website noch offen hat): dazu machst du in einem Frame einen sehr kleinen Frame, der sich alle 20 sek. neu lädt (META-Refresh). Auf der Serverseite prüft ein Skript bei jeder Anfrage, ob für den Nutzer eine Mitteilung vorliegt, und zeigt diese gegebenfalls an. Oder natürlich man nimmt einfach eine eMail-Benachrichtigung.
Filipp
wenn Deine Seite dynamisch programmiert ist kannst Du doch bei Einloggen des Users (er bekommt das Popup zu sehen) zum Beispiel in eine Textdatei rein schreiben, daß der UserXY das Popup gesehen hat.
Beim nächsten einloggen wird diese Textdatei abgefragt mit einer einfachen if Schleife: wenn User schon Popup, dann weiter, sonst Popup.
Beim nächsten einloggen wird diese Textdatei abgefragt mit einer einfachen if Schleife: wenn User schon Popup, dann weiter, sonst Popup.
> kannst du z.B. in einem PHP-Skript
einfach
> aus der entsprechenden
Umgebungsvariable
> auslesen.
das hatte ich mir auch schon überlegt,
obwohl es hier zu Problemen mit den
verschiedenen Browsern kommen könnte.
Nein, das ist eine PHP-Umgebungsvariable, die hängt nicht vom Browser ab. Die braucht der Server ja auch selber unbedingt, er muss ja wissen, an wen er die Antwort zurückzusenden hat. Nennt sich "REMOTE_ADDR".einfach
> aus der entsprechenden
Umgebungsvariable
> auslesen.
das hatte ich mir auch schon überlegt,
obwohl es hier zu Problemen mit den
verschiedenen Browsern kommen könnte.
Ein Realisierungsbeispiel ist mir jetzt aber gerade etwas anstrengend...
Filipp
Verfluchtes Forum. Es ist etwas schwierig hier Code zu posten, selbst wenn man die spiten Klammern korrekt mit maskiert (&...) werden sie irgendwie wieder zurückgewandelt und "ausgeführt". Daher hier jetzt: .- ist öffenende spitze Klammer, -. schliessende - auch wenn es das nicht unbedingt einfacher verständlich macht.
Hallo,
im Endeffekt brauchst du folgende Dinge:
eine Datei, sagen wir "messageWatch.php". Die baust du irgendwo in einen ganz kleinen Frame ein, so dass man sie nicht sieht.
Sie enthält folgendes:
im Head eine meta-Tag wie:
.-meta http-equiv="refresh" content="30; URL=.-?php echo $PHP_SELF ?-."-..-!-- Dokument lädt sich alle 30 sekunden neu ---.
Im Body dann ein einfaches PHP:
.-?php
Result=//SQL-Abfrage a la "SELECT * FROM Messages WHERE USER = "$SESSION['UserID']" AND AllreadyDisplay = false;
if(Result.NumRows > 0){
echo ".-script language="javascript"-.window.open("/..pfad../showMessages.php").-/script-."
}
?-.
Es fragt also in der DB ab, ob eine Nachricht für den Nutzer vorliegt. Dabei würde ich die Nachrichten Anhand von UserIDs verwalten, dann werden sie auch dann noch angezeigt, wenn der User mittlerweile eine andere IP-Adresse hat. Wenn eine Nachricht vorliegt wird per Javascript ein neues Fenster geöffnet, dass dann die Nachricht ausgibt.
Sämtliche Funktions- und Variablenbezeichnungen hier (z.B. $PHP_SELF) sind mit ziemlicher Sicherheit falsch geschrieben. Ich kann mir das nie merken und muss immer nachschauen für sowas (mache aber auch schon länger kein php mehr), aber ich denke es wird klar was ich meine, wenn du etwas php & javascript - Kentnissen solltest du das hinbekommen.
Manko: es funktioniert eben nur solange, wie der Frame mit der messageWatch.php geöffnet ist. Du könntest die auch in ein kleines Fenster packen, das sich extra öffnet. Dann können die Leute im Browser beliebig surfen (müssen nicht deine Seite offenlassen), werden aber über das Fenster trotzdem bei neuen Nachrichten benachrichtigt. Web.de Freemail realisiert so z.B. eine "Mailboxüberwachung".
Das ist jetzt mal ein einfacher Ansatz, mit genügend Durchhaltevermögen sollte sich da was draus machen lassen. Klar ist die Realisierung noch etwas Aufwand, deswegen habe ich jetzt auch keine Lust ein komplettes Script abzulieferen, das würde ich höchstens für einen (sehr fairen) Stundensatz tuen. Aber wie gesagt: man kann sich durchbeissen, ich musste da auch oft hart kämpfen.
Filipp
Hallo,
im Endeffekt brauchst du folgende Dinge:
eine Datei, sagen wir "messageWatch.php". Die baust du irgendwo in einen ganz kleinen Frame ein, so dass man sie nicht sieht.
Sie enthält folgendes:
im Head eine meta-Tag wie:
.-meta http-equiv="refresh" content="30; URL=.-?php echo $PHP_SELF ?-."-..-!-- Dokument lädt sich alle 30 sekunden neu ---.
Im Body dann ein einfaches PHP:
.-?php
Result=//SQL-Abfrage a la "SELECT * FROM Messages WHERE USER = "$SESSION['UserID']" AND AllreadyDisplay = false;
if(Result.NumRows > 0){
echo ".-script language="javascript"-.window.open("/..pfad../showMessages.php").-/script-."
}
?-.
Es fragt also in der DB ab, ob eine Nachricht für den Nutzer vorliegt. Dabei würde ich die Nachrichten Anhand von UserIDs verwalten, dann werden sie auch dann noch angezeigt, wenn der User mittlerweile eine andere IP-Adresse hat. Wenn eine Nachricht vorliegt wird per Javascript ein neues Fenster geöffnet, dass dann die Nachricht ausgibt.
Sämtliche Funktions- und Variablenbezeichnungen hier (z.B. $PHP_SELF) sind mit ziemlicher Sicherheit falsch geschrieben. Ich kann mir das nie merken und muss immer nachschauen für sowas (mache aber auch schon länger kein php mehr), aber ich denke es wird klar was ich meine, wenn du etwas php & javascript - Kentnissen solltest du das hinbekommen.
Manko: es funktioniert eben nur solange, wie der Frame mit der messageWatch.php geöffnet ist. Du könntest die auch in ein kleines Fenster packen, das sich extra öffnet. Dann können die Leute im Browser beliebig surfen (müssen nicht deine Seite offenlassen), werden aber über das Fenster trotzdem bei neuen Nachrichten benachrichtigt. Web.de Freemail realisiert so z.B. eine "Mailboxüberwachung".
Das ist jetzt mal ein einfacher Ansatz, mit genügend Durchhaltevermögen sollte sich da was draus machen lassen. Klar ist die Realisierung noch etwas Aufwand, deswegen habe ich jetzt auch keine Lust ein komplettes Script abzulieferen, das würde ich höchstens für einen (sehr fairen) Stundensatz tuen. Aber wie gesagt: man kann sich durchbeissen, ich musste da auch oft hart kämpfen.
Filipp