CMS qui affiche une liste de fichiers

Amuel Pouart -  
dugenou Messages postés 6262 Statut Contributeur -
Bonjour,
Je cherche un ultra-mini CMS qui remplacerait l'affichage de nos navigateurs, ce qu'il ne font pas assez bien à mon goût. Je m'explique : je mets un petit nombre de fichiers disponibles en téléchargement. Je les transfère par ftp. Je ne créé pas de document html. Le navigateur affiche simplement le contenu du dossier.
Seulement l'affichage est moche, incomplet (les noms longs sont tronqués) et chez certains utilisateurs cela ne fonctionne même pas (je ne sais pas pourquoi).
Je ne veux faire aucune manipulation autre qu'envoyer les fichiers par ftp. Le reste doit être automatique.

Connaissez-vous un CMS ou un script qui fasse cela ?
J'ai un peu fouillé les CMS mais ils ont tous envie que j'écrive mes articles (ça se comprend mais ce n'est pas ce qu'il me faut.)

Merci à tous.

A voir également:

3 réponses

dugenou Messages postés 6262 Statut Contributeur 1 452
 
Bonjour,

Tu n'as pas besoin d'un CMS, il suffit de créer un script, comme expliqué dans ce message :
https://forums.commentcamarche.net/forum/affich-1918120-afficher-le-contenu-d-un-repertoire-en-php

Maintenant, si tu veux quelque chose de plus sophistiqué, tu peux utiliser un CMS comme Phortail et ne conserver que le module "Téléchargement" : http://phortail.free.fr/
0
Amuel Pouart
 
Salut et merci bien pour ta double réponse.
J'ai essayé le script : il ne gère pas les noms longs (espaces, caractères spéciaux : l'affichage est moche et le lien échoue).
Quant à phortail, bien vu, le CMS sans BDD. Je viens de le tester sous Wamp et le module téléchargement ne fonctionne pas sans intervention manuelle, un peu fastidieuse.
L'idée pour moi, c'est que je ne veux faire aucune manip : j'actualise la liste tous les jours de la semaine, dans 6 sous-dossiers. Le seul fait de mettre ces fichiers en ligne me prend du temps (j'aimerais aussi trouver un logiciel qui me "cloudifie" un peu tout ça) et je souhaiterais automatiser la tâche le plus possible.
Merci en tout cas pour ces idées.
0
dugenou Messages postés 6262 Statut Contributeur 1 452
 
En ce qui concerne ton problème d'affichage des noms longs, à espace, à caractères spéciaux, à accents, etc, ça doit être possible de le prévoir dans le script, mais d'une manière générale, c'est à éviter sur Internet.
0
Amuel Pouart
 
Oui, je sais bien. Il m'est arrivé d'être tout petit webmestre un bon paquet de fois et j'ai toujours fait attention à ce détail. Mais dans le cas qui me concerne aujourd'hui, c'est impossible à éviter : il s'agit de mes cours et les noms doivent absolument être clairs pour les élèves et les parents.
Merci encore en tout cas.
0
dugenou Messages postés 6262 Statut Contributeur 1 452
 
Regarde dans le fichier "include/admin/upload.inc" du CMS Phortail, tu devrais trouver la solution pour ton problème de script..
0
Amuel Pouart
 
OK. Là, j'ai pas le temps, mais ce soir je m'y attache.
Merci encore. Je poste ici le résultat de ma lecture.
Bon dimanche à tous.
0
Amuel Pouart
 
Salut,

Je viens d'une part d'essayer de regarder à l'intérieur de phortail et d'autre part du code du script que tu m'as indiqué, mais ça dépasse de loin mes compétences. J'arrive juste à me repérer dans le script, mais je ne vois pas ce que l'on peut changer pour qu'il accepte les caractères extra-terrestres (°, espace...). Pour phortail, à part les extensions autorisées et la taille des fichiers permise, je ne vois pas comment transformer ce code pour l'automatiser.
Le script serait à mon sens la bonne solution s'il était capable de gérer mes noms de dossiers / fichiers. Ensuite je pourrais l'adapter pour qu'il affiche le résultat suffisamment élégamment. Ça, je dois pouvoir le faire, si je comprends bien ce que j'ai lu.
Si quelqu'un peut proposer un amendement, je suis très preneur.
Merci à tous.
0
Amuel Pouart
 
Peut-être faudrait-il que je cite le code original de gryzzly (http://www.commentcamarche.net/communaute/profil-gryzzly) ? Ce serait plus clair, non ? Le voici :

<?php
$dir_nom = '.'; // dossier listé (pour lister le répertoir courant : $dir_nom = '.'  --> ('point')
$dir = opendir($dir_nom) or die('Erreur de listage : le répertoire n\'existe pas'); // on ouvre le contenu du dossier courant
$fichier= array(); // on déclare le tableau contenant le nom des fichiers
$dossier= array(); // on déclare le tableau contenant le nom des dossiers

while($element = readdir($dir)) {
	if($element != '.' && $element != '..') {
		if (!is_dir($dir_nom.'/'.$element)) {$fichier[] = $element;}
		else {$dossier[] = $element;}
	}
}

closedir($dir);

if(!empty($dossier)) {
	sort($dossier); // pour le tri croissant, rsort() pour le tri décroissant
	echo "Liste des dossiers accessibles dans '$dir_nom' : \n\n";
	echo "\t\t<ul>\n";
		foreach($dossier as $lien){
			echo "\t\t\t<li><a href=\"$dir_nom/$lien \">$lien</a></li>\n";
		}
	echo "\t\t</ul>";
}

if(!empty($fichier)){
	sort($fichier);// pour le tri croissant, rsort() pour le tri décroissant
	echo "Liste des fichiers/documents accessibles dans '$dir_nom' : \n\n";
	echo "\t\t<ul>\n";
		foreach($fichier as $lien) {
			echo "\t\t\t<li><a href=\"$dir_nom/$lien \">$lien</a></li>\n";
		}
	echo "\t\t</ul>";
 }
?>
0
dugenou Messages postés 6262 Statut Contributeur 1 452
 
Bonsoir,

Dans le script du fichier "include/admin/upload.inc" de Phortail, il y a deux fonctions qui peuvent te servir, car il y a de toutes manières, pour nommer des fichiers, surtout destinés à Internet, des caractères interdits et d'autres déconseillés :

ligne 64
$admupdId = preg_replace('#[\0-\x1f]#', '', $admupdId); // Filtre les caractères de contrôle

et ligne 125
$f1_name = filename_to_ASCII($f1_name); // Convertit le nom de fichier en ASCII

Si tu ne veux pas ou que tu ne sais pas utiliser ces fonctions, tu devras nommer correctement tes fichiers avant de les placer sur le serveur pour les proposer en téléchargement. A mon avis, tu n'as pas d'autre choix.
Ce n'est pas le script de gryzzly qui pose problème.
0