[ pyc @ 01.06.2006. 21:21 ] @
Kada izvršite ovaj kod dole nećete dobiti nikakav izlaz, samo će se učitati varijabla iz fajla, inkrementirati za 1 i upisati u fajl. Naravno, ako nema fajla, on se kreira i to sve radi ok. Sada pokušajte da de-komentarišete poslednje dve linije koda. Kod mene se u tom slučaju događa da se nekim čudom varijabla ne inkrementira za 1 nego za 2 (kao da se dva puta pozvao ceo kod), što ja nikako ne mogu da objasnim. A vi?

Code:

<?
$n = $_SERVER[DOCUMENT_ROOT].'/proba.txt';
if (file_exists($n)) {
    $f = fopen($n, 'r+');
}    
else {
    $f = fopen($n, 'x+');
    fwrite($f, '0');
    rewind($f);
}    
$d = fread($f,5);
$d++;
rewind($f);
fwrite($f, $d);
fclose($f); 
//header('Content-type: image/gif');
//readfile($_SERVER[DOCUMENT_ROOT].'/slika.gif');
?>
[ Gojko Vujovic @ 01.06.2006. 21:39 ] @
Probah ga na windowsu gde mi je bio php pri ruci i pri svakom prikazu se inkrementirao tačno jedanput, bez obzira na postojanje poslednje dve linije.
[ pyc @ 01.06.2006. 21:41 ] @
Ova moja varijanta je PHP 4.4.2 na Linuxu...
[ pyc @ 02.06.2006. 08:03 ] @
Dodavanje ova dva http hedera je resilo problem... mada mi i dalje nije jasno kako to kod moze da se izvrsi vise puta, ako heder nije podesen kako treba...

header('Content-length:
header('Expires:
[ Gojko Vujovic @ 02.06.2006. 09:04 ] @
Mozda nesto do browsera i broja refreshovanja.. probaj da ga pozoves curl-om iz konzole, bez tih headera.