Det är det andra argumentet det är fel på ("w"). RTFM: http://se.php.net/fopen
Frågan#1
Får inte detta "script" för att kolla hur många som klickar på länkar att fungera.
Jo det fungerar som redirekt, och det öppnar textfilen som skall logga, men det skivs inget (eventuell gammal text tas bort) i filen.
$COUNT_FILE = "c:\\Inetpub\\home\\xxx.xx\\click_count\\clicks_counter_data.txt";
// En: Absolute path and name to count data file.
// Fr: Chemin absolu (complet) et Nom du fichier compteur.
// End Necessary Variables section
/******************************************************************************/
function error ($error_message) {
echo $error_message."<BR>";
exit;
}
$url = urldecode($QUERY_STRING);
if (! file_exists($COUNT_FILE))
error("Can't find file, check '\$COUNT_FILE' var...");
if ((! $url) || (! preg_match("/http:/", $url))) error ("Invalid url, you chould add url ex: <A HREF=\"http://$SERVER_NAME$PHP_SELF?[url]http://www.ftls.org/\[/url]">[url]http://[/url]$SERVER_NAME$PHP_SELF?[url]http://www.ftls.org/[/url]</A>");
$file_arry = file($COUNT_FILE); //or error("Can not open \$COUNT_FILE");
while (list($key, $val) = each($file_arry)) {
if ($val != "") {
list($file_url, $nb) = preg_split("/\t|\n/", $val);
if ($file_url == $url) {
$nb++; $file_arry[$key] = "$file_url\t$nb\n"; $find = 1;
}
}
}
$file = join ("", $file_arry);
if (! $find) $file .= "$url\t1\n";
$fp = fopen("$COUNT_FILE", "w"); //or error("Can not open \$COUNT_FILE");
flock($fp, 1);
fputs($fp, $file);
flock($fp, 3);
fclose($fp);
header("Location: $url");
?>
