anzeige des referrer per db, oder per zeit

HoB

HoB
ID: 79596
L
22 April 2006
2.521
74
moin... ich kenne das folgende...

<html><head><title>Test</title>
</head><body>
<script type="text/javascript">
document.write("<h1>Lieber Besucher</h1>");
document.write("Du kommts von " + document.referrer + " !");
</script>
</body></html>

ich hätte nun gerne, daß das script mir sagt von welcher seite der besucher kommt, aber ohne erweiterungen, wie z.b. index.html, oder /bilder/1.htm, sondern nur die dom, also z.b. www.mhn24.com

diese domain soll dann in einer datenbank eingetragen werden und auf der seite auf der der besucher dann drauf ist, angezeigt werden. wenn das ohne db-eintrag geht und es z.b. nur die letzten 5 klicks einer anderen domain anzeigt, wäre es noch besser. ist das überhaupt lösbar?
 
ich weiß zwar nicht, wie es geht, aber ich bin mir 100% sicher, dass du bei den letzten 5 domains auf jeden fall eine db haben musst, bei den anderen... probiers mal mit der php funktion:
PHP:
$HTTP_SERVER_VARS['HTTP_REFERER']
das müsste eigentlich gehen...
selfphp.de schrieb:
Achja, es gibt einige Desktop-Firewalls (z.B. Norton Personal Firewall), die das Senden des HTTP-Referers unterbinden... in dem Fall würde dein Counter also nicht funktionieren.
 
Wenn du die letzten 5 willst kannst auch mit cookies Arbeiten, aber denke dran JS und Cookies kann man blocken PHP und Mysql nicht. Und den Referer kann man fälschen.
 
probiers mal mit der php funktion:
PHP:
$HTTP_SERVER_VARS['HTTP_REFERER']
das müsste eigentlich gehen...

Das ist allerdings keine PHP-Funktion, sondern eine Variable. Noch eine Anmerkung:

Server Variablen: $_SERVER

Anmerkung: Dieses Array wurde mit PHP 4.1.0 eingeführt. In älteren Versionen benutzen Sie stattdessen $HTTP_SERVER_VARS.

$_SERVER ist also die aktuellere Variante.
:arrow: $_SERVER['HTTP_REFERER']

Wenn du die letzten 5 willst kannst auch mit cookies Arbeiten, aber denke dran JS und Cookies kann man blocken PHP und Mysql nicht. Und den Referer kann man fälschen.
Hm.. das mit den Cookies verstehe ich nicht? Wie soll das denn dann der Server speichern? Oder soll der vergebene Cookies lokal aufrufen? Werden die überhaupt auf dem Server gespeichert?? Ich würde doch auf eine Datenbank oder eine Datei ausweichen.


Ach ja und zum Thema dann vielleicht auch noch was:

parse_url

(PHP 3, PHP 4, PHP 5)
parse_url -- Analysiert einen URL und gibt seine Bestandteile zurück

Hab' ich allerdings noch nie probiert afair, also ausprobieren! ;)
 
Öhm ja beim überfliegen kam mir das so, ist aber ein Denkfehler von mir er will das ja und nicht die User die letzten 5 besuchten unterseiten. Chancel das einfach wieder ^^.

parse_url funzt wunderbar, ich habs auch grad in nutzung bei meiner counter class
 
um euch das mal in aktion zu zeigen.. klickt mal auf aufkleber in meiner sig. dort auf der rechten seite werden immer die url´s eingeblendet. man kann sich seinen link auf der hp einbinden und immer wenn dann einer auf diesen link klickt, wird er auf aufkleber angezeigt.. nach dem klick in meiner sig, müsste also klamm.de oben stehen. ;)
 
joa.. das weiß ich auch und genau sowas möchte ich auch realisieren ;)
Achso - ich dachte es wäre die deine! :mrgreen:

Wie gesagt gibt es die Methoden
- Datei (würde sich wohl jede Zeile eine URL empfehlen)
- Datenbank-Tabelle

Ich persönlich würde ja zur Tabelle tendieren. Beim Zugriff auf die Datei könnte es ggf. zu Problemen kommen - gleichzeitiger Zugriff, o.ä.; ob das in der Praxis dann wirklich so aussieht kann ich nicht sagen.

Ansonsten reicht dir ja eigentlich eine zweispaltige Tabelle mit der URL und schlauerweise noch einer ID, um absteigend sortieren zu können. Dann kannst du per LIMIT in SQL (ich denke es läuft auf mySQL raus) die neuesten 5 ausgeben lassen. Oder 10.. wie auch immer! ;)