probleem met refresh na upload foto
ik zit met het volgende probleem.
Ik heb een script gemaakt die laat toe om fotos te verwijderen.
Het functionneerd heel goed.
Als de klant een nieuwe foto wil toevoegen, de upload is ok en het nieuw bestand wordt correct geschreven in de directory.
Als de klant een foto wil vervangen, dus eerst delete en dan upload, dan gebeurd er iets raar.
Als de pagina wordt herladen na de upload (geforceerd met header:location..) dan zie ik nog de oude foto (niet altijd!!!!!) en als ik een F5 doe, dan zie ik de nieuwe wat bewijst dat alles wel geschreven is.
Mijn vraag is dus, is er een speciale manier om een "refresh te doen " van een directory om zeker te zijn dat hij de nieuwe files gaat lezen??
ik doe dit om de dir te lezen.
$dir = "pictures";
$kl = strtolower($kl_num);
$opendir = opendir($dir);
$scan = scandir($dir);
$count_files = count($scan);
foreach ($scan as $file) {
if((strstr($file,$kl."-tb")) && (!strstr($file,"-tb0"))){
$count ++;
$e = substr($file,strlen($file)-5,1);
$name_tb = "img".$e;
echo '<input name="'.$name_tb.'" src="/pictures/'.$file.'" alt="Cliquez pour supprimer" title="cliquez pour supprimer" type="image" style="padding:7px; width:90px; height:65px" value="'.$file.'" />';
echo '<input name="image'.$e.'" type="hidden" value="'.$file.'" />';
echo '<input name="del" type="hidden" value="del" />';
}
}
closedir($opendir);
bedankt
druk je op enter gebeurt er niks druk je op f5 of ctrl F dan doet hij het wel
<meta http-equiv="refresh" content="5" >
mischien heb je daar wat aan
content staat voor de tijd voor iedere refresh
geef aan in een header dat je de cache niet wil gebruiken. Misschien werkt dat?
Komt het nieuwe bestand onder dezelfde url beschikbaar als de oude? dan is het waarschijnlijk een cache waaruit die foto gehaald wordt (browser cache, server cache, proxy cache)
ik heb dit
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
is dat ok?
@ TVJB
Browser cache leeg gemaakt
server cache ?? test fase op localhost.. kan het daar aan liggen ??
ik heb ondertussen mijn script aangepast en het werkt veel beter. Ik gebruik nu na het uploaden van de foto's de header refresh method met refresh op 0 en de nieuwe image wordt "bijna" onmiddelijk getoond.
thanks for support
didier
<meta http-equiv='expires' content='0'>
<meta http-equiv='pragma' content='no-cache'>
smane met de refesh, zou het niet voor problemen zorgen??
in verband met pictures en directory, ho kan ik het best een directory openen zodanig dat de pictures in juiste volg orde getoond zijn..
ik heb max 6 pict genoemd pict.jpg pict2.jpg ...
maar ze worden random getoond, bebrijp het niet..
$dir = "pictures";
$fd = opendir($dir);
scandir($dir);
$n = strtolower($kl_num)."-";
while (false !=($files = readdir($fd))) {
if (($files != ".") && ($files != "..")) {
if((strstr($files,$n)) && (!strstr($files,'-pict0'))){
$pict = '<img src="'.$dir."/".$files.'" alt="" title="" width="103" height="60" onmouseover="MM_setTextOfLayer(\'Layer1\',\'\',\'<img src="'.$dir."/".$files.'" width="300" height="199"/>\')"/>';
echo $pict;
$trouve = 1;
}
}
}
Thanks, didier
thanks anyway
didier