Outils pour utilisateurs

Outils du site


php:snippets

Ceci est une ancienne révision du document !


Bouts de scripts

check & download

Plein de bouts de codes un peu partout pour gérer les download avec check préalable, mais aucun qui gère le cache proprement, donc à partir des commentaires de la fonction header de la doc php, ça donne : <code php> ici code de vérif des droits, de la validité du fichier, etc… puis, le download à proprement parler if(is_file($fichier)) { fichier existe on gere le cache coté client

 $headers = apache_request_headers();
 if (isset($headers['If-Modified-Since']) && (strtotime($headers['If-Modified-Since']) == filemtime($url))) {
    // le fichier est en cache chez le client, avec la bonne date
    header('Last-Modified: '.gmdate('D, d M Y H:i:s', filemtime($url)).' GMT', true, 304);
 } else {
    // pas en cache ou trop vieux
    header('Last-Modified: '.gmdate('D, d M Y H:i:s', filemtime($fn)).' GMT', true, 200);
    header('Content-Length: '.filesize($url));
    $mime = 'application/'.$extension;
    if ($extension == 'html' || $extension == 'htm') {
       $mime = 'text/html';
    }
    header("Content-type: $mime");
    readfile($url);
 }

} else {

 // fichier KO
 header('header("HTTP/1.x 404 Not Found");');

}

php/snippets.1202144628.txt.gz · Dernière modification : 04/02/2008 18:03 de daniel