Home | Registrieren | Einloggen | Suchen | Aktuelles


Forum » PHP & MySQL » REFERER herausfinden trotz index.html Antworten
REFERER herausfinden trotz index.html

Mondschatten
Quasselstrippe


Beiträge: 238


Ihr Lieben,

folgende Frage beschäftigt mich im Moment:

ich benutze die Methode $ref= $HTTP_REFERER, um den Referer eines Besuchers herauszufinden. Da die php-Datei, in der diese Abfrage steht, von meiner index.html aufgerufen wird, liefert mir $HTTP_REFERER immer den url der index.html als Referer zurück.

Was kann ich tun? Ich kann doch nicht die php-Datei als erste aufrufen - noch vor der Startseite...

Liebe Grüsse
Mondschatten


---
Schwarz kann auch glänzen.

  Profil   Website   Editieren   Zitieren

stalkerX
Mausakrobat


Beiträge: 183


Nein, du kannst aber die Abfrage schon auf der Startseite starten - von mir aus in der ersten Zeile. Abfragen, in eine Variable speichern und dann vom PHP-Script auswerten lassen.


---
.: Web 2.0 Entwickler & seine Notizen :.

  Profil   Website   Editieren   Zitieren

Mondschatten
Quasselstrippe


Beiträge: 238




...Danke für die Hilfe! Ich habe es nunmehr genau so gelöst und es funktioniert wunderbar.

Manchmal sieht man den Wald vor lauter Bäumen nicht.

Liebe Grüsse
Mondschatten



---
Schwarz kann auch glänzen.

  Profil   Website   Editieren   Zitieren

slackerbitch
Otto-Normal-Poster


Beiträge: 69


alternativ ueber .htaccess html dateien parsen lassen; das sollte auch gehen.

---
sig

  Profil   Website   Editieren   Zitieren

billi
Pixelschubser


Beiträge: 10


Hi...
ICh habe das selbe Prob in meinem Shop. Da wird der referer auch gespeichert. Nur bei mir kommt man auch über ne index.html, und dann ist meine eigene URL immer als referer gespeichert. Wie kann ich das machen, das der referer gespeichert wird bzw. weitergereicht wird. HAb schon überall nach einer Lösung gesucht, aber noch nichts gefunden.

thx
billi

  Profil   Editieren   Zitieren

languitar
Foren-Team


Beiträge: 2795


du kanst den z.B. am Anfang auslesen und dann über ne Session weitergeben

---
Take a look here!
Lichtblick - Einblick - Ausblick

  Profil   E-Mail   Website   Editieren   Zitieren

billi
Pixelschubser


Beiträge: 10


Hm..
Und wie mach ich das?

billi

  Profil   Editieren   Zitieren

languitar
Foren-Team


Beiträge: 2795


auf der ersten Seite (inde.php) fügst du folgenden Code ein:
1: 
2: 
3: 
4:
<?php
session_start();
$_SESSION['referer'] = $HTTP_REFERER;
?>

PHP kümmert sich jetzt automatisch darum, dass die sog. Session-ID übergeben wird. Entweder in der Adresszeile oder mit einem Cookie. Mit Sessions kannst du im Prinzip Variablen über alle Seiten hinweg benutzen. Allerdings muss auf allen anderen Seite natürlich auch wieder auf die Session zurückgegriffen werden, die vorher angelegt wurde. Folglich musst du jetzt auf allen anderen Seiten auch
1: 
2: 
3:
<?php
session_start();
?>
ganz am Anfang am besten Einfügen. Du musst dann natürlich alle Dateien in php-Dateien ändern. Auf den in der Session gespeicherten Referer kannst du dann so zugreifen:
1: 
2: 
3: 
4: 
5:
<?php
$referer = $_SESSION['referer'];
// oder
echo $_SESSION['referer'];
?>


---
Take a look here!
Lichtblick - Einblick - Ausblick

  Profil   E-Mail   Website   Editieren   Zitieren

billi
Pixelschubser


Beiträge: 10


Meine erste seite ist aber eine html datei. Diese ruft dann eine 2. html Datei auf.
Wie binde ich das in der html Datei ein?

billi

  Profil   Editieren   Zitieren

billi
Pixelschubser


Beiträge: 10


Achso.. die 2.html Datei ruft dann in /catalog/ die index.php auf. Und an diese soll der referer dann übergeben werden.

  Profil   Editieren   Zitieren

c3o
Posting-Schinder


Beiträge: 586


Setz doch mit JavaScript ein Cookie...

  Profil   E-Mail   Website   Editieren   Zitieren

languitar
Foren-Team


Beiträge: 2795


billi schrieb am 20.09.2003 00:51
Meine erste seite ist aber eine html datei. Diese ruft dann eine 2. html Datei auf.
Wie binde ich das in der html Datei ein?

billi


In HTML-Dateien grundsätzlich erst mal gar nicht. Da müsstest du entweder wirklich JavaScript nehmen, wie c3o das vorschlägt, oder daraus eine PHP-Datei machen

---
Take a look here!
Lichtblick - Einblick - Ausblick

  Profil   E-Mail   Website   Editieren   Zitieren

billi
Pixelschubser


Beiträge: 10


Hm.. Dann werd ich php nehmen. Na da bau ich das mal um. Bin gespannt obs dann funzt...

billi

  Profil   Editieren   Zitieren

billi
Pixelschubser


Beiträge: 10


Also irgendwie steh ich auf dem schlauch. Ha mal bißchen probiert.
Von URL www.xyz.de wird auf www.1234.de gelinkt. Dort wird ne index.php aufgerufen, welche wie folgt aufgebaut ist.
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14:
<?php
session_start();
$_SESSION['referer'] = $HTTP_REFERER;
?>
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
<html <?php echo HTML_PARAMS; ?>>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
<title><?php echo TITLE; ?></title>
<base href="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>">
<link rel="stylesheet" type="text/css" href="stylesheet.css">
</head>
<body>
<a href="http://www.4567.de/window.php">weiter </a>


Über den link wird dann die window.php aufgerufen. Welche wie foglt aussieht.
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17:
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
<html <?php echo HTML_PARAMS; ?>>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
<title><?php echo TITLE; ?></title>
<base href="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>">
<link rel="stylesheet" type="text/css" href="stylesheet.css">
</head>
<body>
<?php
session_start();
?>
<?php
$referer = $_SESSION['referer'];
// oder
echo $_SESSION['referer'];
?>

Eigentlich sollte mir doch da der Referer schon angezeigt werden. Oder?
Wo hab ich da jetzt nen Fehler drin?

Diese Nachricht wurde geändert von: billi
  Profil   Editieren   Zitieren

billi
Pixelschubser


Beiträge: 10


Ähm.. geht.. Hatt die Firewall noch an.
Nun wir aber
http://www.xyz.dehttp://www.1234.de/
angezeigt...
Aber da ist http://www.1234.de zuviel. Ich wollt nur den ersten referer haben.
Und nun? Wie kann man das ändern?

  Profil   Editieren   Zitieren
Seite 1 | 2  

Antworten
Nach oben