francoisch Posté 1 Janvier 2008 Posté 1 Janvier 2008 Bonjour Je charge chaque semaine sur mon site un fichier nommé fichexx.pdf où xx est incrémenté de 1 à chaque fois. Une page affiche un lien de cette sorte : <a href="fiche62.pdf" target="_blank">la fiche de la semaine</a> pour chaque fichier. Mon problème : je dois modifier chaque semaine la page pour ajouter un lien pour le nouveau fichier. Ma question : est-il possible (en Javascript, en Php, ...) de tester la présence dun fichier et, ensuite, dafficher le lien si ce fichier existe ? Si Oui, je pourrais créer plusieurs dizaines de liens à lavance ; seuls safficheraient les liens correspondants aux fichiers qui existent sur le site. Par avance merci de votre aide. Francois
Prélude Posté 1 Janvier 2008 Posté 1 Janvier 2008 Bonjour (et bonne année), Oui, c'est possible de tester en Php la présence d'un fichier : //----------------// Renvoie true si le fichier existe, false sinon//function FileExist($url) { $temp = error_reporting(E_ALL & ~(E_ERROR | E_WARNING | E_PARSE | E_NOTICE | E_CORE_ERROR | E_CORE_WARNING | E_COMPILE_ERROR | E_COMPILE_WARNING | E_USER_ERROR | E_USER_WARNING | E_USER_NOTICE)); $file = fopen ($url, "r"); error_reporting($temp); if (!$file) return false; return true;} Et après, un simple if / else fera l'affaire...
Zerobug Posté 1 Janvier 2008 Posté 1 Janvier 2008 J'ai fait un module en php3 qui pourrait te servir : http://www.zerobug.fr/liste-contenu-dossie...gement-php.php3 En fait, ce module permet de lister automatiquement les fichiers (avec extension de son choix, dans ton cas, on peut très bien ne lister que les fichiers avec extension PDF) d'un dossier donné et de créer un lien de téléchargement (et non d'affichage, à savoir que ton PDF sera téléchargé et non affiché par défaut).
captain_torche Posté 1 Janvier 2008 Posté 1 Janvier 2008 On peut vérifier la présence d'un fichier avec une fonction de PHP (file_exists())
francoisch Posté 1 Janvier 2008 Auteur Posté 1 Janvier 2008 bonjour et merci de vos réponses. Je vais m'orienter d'abord sur une solution en Php en utilisant la fonction de Prelude. Merci encore de votre aide. Francois
francoisch Posté 3 Janvier 2008 Auteur Posté 3 Janvier 2008 bonjour Voici ma solution: <?php// affichage des liens des 1000 premières fichesfor( $i = 1000; $i >0; $i = $i - 1){$filename = "fiche".$i.".pdf";if (file_exists($filename)) { print '<p>Pour visualiser la fiche de lecture n°'.$i.', <a href="fiche".$i.".pdf">cliquer ici</a>.</p>'; }} ?> si ça peut être utile à quelqu'un. Merci de votre aide. Francois
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant