Author | Message | Time |
---|---|---|
j0k3r | I'm trying to build a PHP counter (not very good, but it'll do the job) and can't figure out what's going wrong. Basically it reads the number (what the counter is at) from a text file and increments it, puts it to the screen, writes the updated number back to the text file and closes it. [code] <?php /*source of file*/ $filename = 'current.txt'; /*open the file (r+ for read+write)*/ $fp = fopen($filename,'r+'); /*read the file and store it in $currentval (1 line)*/ $currentval = fread($fp, filesize($filename)); /*increment the value (because it's a counter)*/ $currentval++; /*write it to the screen*/ echo $currentval; /*write the incremented value to the source file*/ fwrite ($fp, $currentval); /*close the file*/ fclose ($fp); ?> [/code] No errors are generated from the code, and it just seems as though fwrite() isn't working (I'm probably not using it properly). Online Function Reference at: http://ca.php.net/function.file | January 18, 2004, 12:46 PM |
j0k3r | I tried uploading, and it worked sort of, ended up fixing it eventually... For those interested: [code]<?php $filename = 'current.txt'; /*source of file*/ $fp = fopen($filename,'r+'); /*open the file (r+ for read+write)*/ flock($fp, 2); /*lock the file*/ $currentval = fread($fp, filesize($filename)); /*read the file and store it in $currentval (1 line)*/ $currentval++; /*increment the value (because it's a counter)*/ echo $currentval; /*write it to the screen*/ fseek($fp,0); /*go to beginning of file*/ fputs ($fp, $currentval); /*write the incremented value to the source file*/ flock($fp, 3); /*unlock the file*/ fclose ($fp); /*close the file*/ ?> [/code] | January 18, 2004, 7:23 PM |