hitzeschwitze: Referrerscript: Problem

Beitrag lesen

Hallo!

Ich habe von drweb.de (http://www.drweb.de/programmierung/backlink_02.shtml) folgendes script:

Der Javascript-Aufruf für die Ermittlung des Referrers

<script language="javascript">
function write_ref() {
document.write("<script language='Javascript' src='http://www.domain.de/scripts/backlink.php?woher=" + document.referrer + "'>");
document.write("</");
document.write("script>");
}
write_ref();
</script>

Das PHP-script

<?php
$woher = $_GET[woher]; $schreiben = "";
$zeile = ""; $titelzeile = "";
$doschreiben = 1; $googlehide = 1;

echo "document.write('<b>Backlink-Service: Diese Seiten haben uns empfohlen.</b><br><br>');\n";

if($woher != "") {
if(ereg("google", $woher) || ereg("yahoo", $woher) || ereg("drweb", $woher) || ereg("localhost", $woher) || ereg("ideenreich", $woher)) { $googlehide = 0;}
$buch = implode("", file($woher));
if (preg_match("/<title>(.*)</title>/i", $buch, $title)) { $titelzeile = $title[1]; }
if($titelzeile == "") { $doschreiben = 0;
} else { if(strlen($titelzeile) > 35) { $titelzeile = substr($titelzeile, 0, 35)."..."; } }

if($googlehide == 1) {
$titelzeile = str_replace(""", "", $titelzeile);
$titelzeile = str_replace("'", "", $titelzeile);
$titelzeile = str_replace("´", "", $titelzeile);
$schreiben = "<a href="$woher" target="_blank">$titelzeile</a><br>\n";
}
$datei = file ("referrerlinks.txt");
for($counter = 0; $counter < 12; $counter++){
$schreiben .= $datei[$counter];
if(ereg ($woher, $datei[$counter])) { $doschreiben = 0; }
if(ereg ($titelzeile, $datei[$counter])) { $doschreiben = 0; }
}
} else { $doschreiben = 0; }

$datei = file ("referrerlinks.txt");
for($counter = 0; $counter < 12; $counter++){
$datei[$counter] = str_replace(""", "", $datei[$counter]);
$datei[$counter] = str_replace("'", "", $datei[$counter]);
$datei[$counter] = rtrim($datei[$counter]);
echo "document.write('".$datei[$counter]."');";
}

if($doschreiben == 1 && $googlehide == 1) {
$fp = fopen("referrerlinks.txt","w+");
flock($fp,2);
fwrite($fp,$schreiben);
flock($fp,3);
fclose($fp);
}
?>

Ich würde gerne das Ganze so umwandeln, dass ich kein javascript mehr brauch (weil
unzuverlässiger und nicht bei allen Besuchern aktiviert). Ich dachte mir, ich setz
die Datei backlink per include in die zu überwachenden Dateien und
änder' nur die zweite Zeile im script,

$woher = $_GET[woher];
in
$woher = getenv("HTTP_REFERER"); oder
$woher = $HTTP_SERVER_VARS["HTTP_REFERER"];

Aber das funktioniert nicht wirklich. Wo liegt denn der Fehler?