pisze sobie oto taka strone:
http://fron.beskidmedia.pl/epsxe-pl/
Mam kilka elementów:
<div class="lista2" id="cdrpeops.dll"><div class="nag">P.E.Op.S. CDR Driver 1.4</div><div class="opis1">Data modyfikacji: 05.05.2012 Ilość pobrań: </div><div class="opis2">...</div></div>
Dynamicznie przypisuje zdarzenia:
$('.lista1, .lista2').each(function(){
$(this).mouseover(function(){
$(this).children().first().css('color', '#AF3F23');
$(this).stop();
$(this).fadeTo('normal', 1);
});
$(this).mouseout(function(){
$(this).children().first().css('color', 'gray');
$(this).stop();
$(this).fadeTo('normal', .50);
});
$(this).click(function(){
$('#ramka').load('pobierz.php?plik=' + $(this).attr('id'));
$(this).find('.opis2').load('magazyn/' + $(this).attr('id') + '.txt');
});
$(this).find('.opis2').load('magazyn/' + $(this).attr('id') + '.txt');
});
Jak widać po kliknięciu ma zostać wywołany plik php który zwiększa ilość pobrań w pliku tekstowym oraz rozpoczyna pobieranie,
a następnie na nowo ma zostać załadowana ilość pobrań do warstwy opis2:
<?php
$plik = 'magazyn/'.$_GET['plik'];
$fp = fopen($plik.'.txt', 'r+');
$count = fgets($fp, 10);
$count += 1;
fseek($fp, 0);
fwrite($fp, $count, 10);
fclose($fp);
echo '<script>location.href = "'.$plik.'";</script>';
?>
Plik tekstowy z ilością pobrań jest modyfikowany odpowiednio, pobieranie również się rozpoczyna.
Problem w tym że nie zawsze (raz jest ok a drugi raz nic się nie dzieje) zmienia mi się zawartość warstwy o klasie opis2 do której ma zostać załadowana ilość pobrań
Wygląda mi na to że gdy wczytuje do danej warstw na nowo ten sam plik to on wczytywany jest z caschu wiec nie widać zmian.
Poniższe rozwiązanie także nic nie dało:
jQuery.ajaxSetup({
// Disable caching of AJAX responses
cache: false
});
Może ktoś z użytkowników wie jak rozwiązać mój problem?