I'm newbie in PHP and I am coding a simple text counter. I'm using PHP version 4.3.4 in Xitami 2.5b4 and WinXP Pro.
When I execute the php file, this is the output:Note: The "Error opening file for reading" is an error handler that I made due to the fact that it will overload ~350mb of RAM mem if it is not there. And also, it seems to be hiding the same error shown above it ("supplied argument is not a valid stream resource")...Code:./kounterfiles/~hitcounter~index.php.txt Warning: fwrite(): supplied argument is not a valid stream resource in D:\WebDevelop\local\hitcounter\index.php on line 29 Warning: fclose(): supplied argument is not a valid stream resource in D:\WebDevelop\local\hitcounter\index.php on line 30 Hit Counter: Error opening file for reading.
Here is the code:
Code:<?php /* Based on php.inc.ru's counter Dev by BubuX ([email protected]) */ // Config settings here $file_dir = "./kounterfiles/"; $file_ext = ".txt"; $currfile = $file_dir . str_replace('/','~',$_SERVER['SCRIPT_NAME']) . $file_ext; echo $currfile; // Log visit function log_visit() { $fp = fopen($currfile, "a"); //if (!$fp) { //echo "<br>Hit Counter: Error opening file for appending.<br>"; //} //else { $today = getdate(); $month = $today[month]; $mday = $today[mday]; $year = $today[year]; $date = $mday . $month . $year; $line = $REMOTE_ADDR . "|" . $mday . $month . $year . "\13\10"; fwrite($fp, $line); fclose($fp); //} } // Show visit count function show_visit() { $fp = fopen ($currfile, "r"); if (!$fp) { echo "<br>Hit Counter: Error opening file for reading.<br>"; } else { $visits = 0; while (!feof ($fp)) { $line = fgets($fp, 4096); $visits++; //echo $buffer; } fclose ($fp); // Display visits count echo $visits; } } log_visit(); show_visit(); ?>




Reply With Quote