$php_self als $http_referer

weltvolk

Mitglied
Hallo, habe ein kleines Problem mit der Anzeige des Referrers:
PHP:
<?
$vonseite = $HTTP_REFERER;
echo "Du kommst von $vonseite";
?>
Wenn die Webseite direkt aufgerufen wurde, wird kein Wert ausgegeben. Wie könnte man das ändern? Hier mein Ansatz:
PHP:
<?
if ("$HTTP_REFERER = $PHP_SELF")
$vonseite = $PHP_SELF;
else
$vonseite = $HTTP_REFERER;
echo "Du kommst von $vonseite";
?>
Leider funktioniert es so nicht, da jetzt immer $PHP_SELF ausgegeben wird, was muss ich anders machen?
 
== anstatt =

PHP:
<?
if ("$HTTP_REFERER == $PHP_SELF")
$vonseite = $PHP_SELF;
else
$vonseite = $HTTP_REFERER;
echo "Du kommst von $vonseite";
?>

$a = $b ist immer True, deshalb immer Ausgabe $PHP_SELF

;)
 
Hallo Raven280438, habe das Script so geändert, wie von dir vorgeschlagen. Leider wird weiterhin stets $PHP_SELF angezeigt, auch wenn man über einen Link auf die Seite gekommen ist. Woran liegt das bloß?

Habe in der Schleife die Anführungszeichen weggelassen:
PHP:
<?
if ($HTTP_REFERER == $PHP_SELF)
$vonseite = $PHP_SELF;
else
$vonseite = $HTTP_REFERER;
echo "Du kommst von $vonseite";
?>
Jetzt ist es so, als ob es die Schleife nicht gäbe, d. h. bei Verlinkung wird zwar der korrekte Referrer ausgegeben, beim Direktaufruf wieder nichts.
 
Zuletzt bearbeitet:
Ich weis nicht so recht, wofür die Abfrage überhaut dienen soll !?

Vom Logischen her, wird natürlich immer $HTTP_REFERER Ausgegeben, egal on if oder else.

Ich If-Zweig ist
$HTTP_REFERER == $PHP_SELF ,
also
$vonseite == $HTTP_REFERER == $PHP_SELF

und im Else-Zweig ist
$vonseite == $HTTP_REFERER

Also wird im Prinzip immer $HTTP_REFERER ausgegeben.

Ich hoffe das ist verständlich ;)
 
Wenn der Nutzer die Seite direkt aufruft, steht da "Du kommst von". Das ist natürlich nicht schön. Deshalb soll in diesem Fall die Adresse der aufgerufenen Seite erscheinen.
 
Verstehe, was du meinst, vielleicht geht es auch nicht anders bei PHP. Nur wollte ich je nach Voraussetzung die Variable $vonseite mit einer anderen Wertkategorie verknüpfen, da sie zusammen mit anderen Variablen wie Datum und User Agent usw. in eine Logdatei geschrieben werden soll, statt angezeigt zu werden.
 

Neue Beiträge

Zurück