2009/4/7 Chris <dmagick@xxxxxxxxx>: > >> I guess there are multiple ways to engage this problem. It depends how >> "deep" you want to log the traffic. If you just want to count the >> traffic of each image, video etc you could just wrap up each image and >> video to go through php first with file_get_contents() (look in the >> php manual there are some examples how to work with this), count how >> many bytes of data will be sent out and log this in a database or >> however you want to do this. > > While it's a good suggestion, don't use file_get_contents because it reads > the whole file in to memory. > > If you use it on a 200Meg movie, it uses > 200Meg of memory. > > Use filesize() to work out the size. > > Then use fpassthru to shove the data through. > > http://www.php.net/fpassthru > > -- > Postgresql & php tutorials > http://www.designmagick.com/ > > Just another small addition I just got from the php manual: You can use readfile() instead of fpassthru() so you don't have to use fopen(). pseudo code updated: if ( used_bandwith + filesize > allowed_bandwidth) error_message() else write_in_database(used_bandwith = used_bandwith + filesize) readfile(file) Theres always something to learn in PHP Land. -- Currently developing a browsergame... http://www.p-game.de Trade - Expand - Fight Follow me on twitter! http://twitter.com/moortier -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php