[Réglé] Connaitre le nombre de fichier dans un dossier

Ce forum aborde toutes les questions qu'un codeur ou webmaster pourrait se poser, et n'ayant aucun rapport direct avec phpBB.
Tout ce qui peut concerner la récupération des sessions de phpBB sur votre site, doit se faire dans cette section.

Modérateur: Equipe

Règles du forum
A lire impérativement : Règlement de phpBB-fr.com

[Réglé] Connaitre le nombre de fichier dans un dossier

Messagepar FTH10 » 24 Sep 2014 à 13:39

Bonjour à toutes et tous,

Cela n'as pas grand chose à voir avec phpbb, raison pour laquelle je poste dans cette rubrique...

Y aurait t il moyen de connaître le nombre de fichiers inclus dans un dossier du FTP et d'afficher ce nombre sur le forum ?

Exemple :
j'ai 1000 fichiers dans le dossier images du forum, celà me l'indiquerait en bas du forum...

Merci par avance ;) et bonne journée
Modifié en dernier par FTH10 le 01 Oct 2014 à 10:53, modifié 1 fois.
Relax Arcade Pro pour phpBB 3.1.12 et 3.2.x en libre téléchargement ainsi que des jeux Flash ou HTML5
FTH10
Posteur habitué
Posteur habitué
 
Messages: 217
Enregistré le: 09 Jan 2014 à 01:00

Re: Connaitre le nombre de fichier dans un dossier

Messagepar soda » 24 Sep 2014 à 14:39

soda
Posteur expérimenté
Posteur expérimenté
 
Messages: 354
Enregistré le: 25 Déc 2006 à 12:55
Localisation: Sur mon cheval blanc

Re: Connaitre le nombre de fichier dans un dossier

Messagepar FTH10 » 24 Sep 2014 à 14:46

si je fais comme ceci, ça devrait fonctionner ?
Code: Tout sélectionner
<?php 
    $i = 0; 
    $dir = 'images/';
    if ($handle = opendir($dir)) {
        while (($file = readdir($handle)) !== false){
            if (!in_array($file, array('.', '..')) && !is_dir($dir.$file)) 
                $i++;
        }
    }
    echo "Il y a $i fichiers";
?>
Relax Arcade Pro pour phpBB 3.1.12 et 3.2.x en libre téléchargement ainsi que des jeux Flash ou HTML5
FTH10
Posteur habitué
Posteur habitué
 
Messages: 217
Enregistré le: 09 Jan 2014 à 01:00

Re: Connaitre le nombre de fichier dans un dossier

Messagepar cabot » 24 Sep 2014 à 15:08

Image
Avatar de l’utilisateur
cabot
Equipe site
Equipe site
 
Messages: 26802
Enregistré le: 13 Fév 2011 à 20:42
Localisation: Rarement sur la plaque

Re: Connaitre le nombre de fichier dans un dossier

Messagepar FTH10 » 24 Sep 2014 à 15:15

merci à vous deux, donc si je suis ce tuto

je devrais faire ainsi :
Code: Tout sélectionner
<?php
$nb_fichier = 0;
echo '<ul>';
if($dossier = opendir('./images'))
{
while(false !== ($fichier = readdir($dossier)))
{
if($fichier != '.' && $fichier != '..' && $fichier != 'index.php')
{
$nb_fichier++; // On incrémente le compteur de 1
echo '<li><a href="./images/' . $fichier . '">' . $fichier . '</a></li>';
} // On ferme le if (qui permet de ne pas afficher index.php, etc.)
 
} // On termine la boucle
?>
Relax Arcade Pro pour phpBB 3.1.12 et 3.2.x en libre téléchargement ainsi que des jeux Flash ou HTML5
FTH10
Posteur habitué
Posteur habitué
 
Messages: 217
Enregistré le: 09 Jan 2014 à 01:00

Re: Connaitre le nombre de fichier dans un dossier

Messagepar cabot » 24 Sep 2014 à 15:27

Il manque la balise fermant la liste, l'affichage du nombre de fichiers, et la fermeture du dossier.

Tout la dernière partie du snippet :
Code: Tout sélectionner
echo '</ul><br />';
echo 'Il y a <strong>' . $nb_fichier .'</strong> fichier(s) dans le dossier';
 
closedir
($dossier);
 
}
 
else
     echo 'Le dossier n\' a pas pu être ouvert';

Bon après, moi le php c'est pas ma partie, c'est juste que j'avais trouvé ce lien.
Image
Avatar de l’utilisateur
cabot
Equipe site
Equipe site
 
Messages: 26802
Enregistré le: 13 Fév 2011 à 20:42
Localisation: Rarement sur la plaque

Re: Connaitre le nombre de fichier dans un dossier

Messagepar soda » 24 Sep 2014 à 16:38

Atta, tu veux juste afficher le nombre de fichiers, comme tu le demandes dans ton 1er message, où tu veux afficher les fichiers en question, chose que fait ton code?
soda
Posteur expérimenté
Posteur expérimenté
 
Messages: 354
Enregistré le: 25 Déc 2006 à 12:55
Localisation: Sur mon cheval blanc

Re: Connaitre le nombre de fichier dans un dossier

Messagepar FTH10 » 24 Sep 2014 à 18:27

non je veux juste afficher le nombre de fichiers que j'ai dans un dossier bien spécifique, je ne veux pas afficher les fichiers en question...

;) merci pour tout
Relax Arcade Pro pour phpBB 3.1.12 et 3.2.x en libre téléchargement ainsi que des jeux Flash ou HTML5
FTH10
Posteur habitué
Posteur habitué
 
Messages: 217
Enregistré le: 09 Jan 2014 à 01:00

Re: Connaitre le nombre de fichier dans un dossier

Messagepar cabot » 24 Sep 2014 à 22:08

Si vous considérez votre requête comme résolue, merci d'ajouter l'attribut de sujet [Réglé]
Image
Avatar de l’utilisateur
cabot
Equipe site
Equipe site
 
Messages: 26802
Enregistré le: 13 Fév 2011 à 20:42
Localisation: Rarement sur la plaque

Re: Connaitre le nombre de fichier dans un dossier

Messagepar soda » 26 Sep 2014 à 18:48

FTH10 a écrit:non je veux juste afficher le nombre de fichiers que j'ai dans un dossier bien spécifique, je ne veux pas afficher les fichiers en question...

Donc le code que tu nous montres ne correspond pas à ce que tu veux ;)
soda
Posteur expérimenté
Posteur expérimenté
 
Messages: 354
Enregistré le: 25 Déc 2006 à 12:55
Localisation: Sur mon cheval blanc

Re: Connaitre le nombre de fichier dans un dossier

Messagepar FTH10 » 26 Sep 2014 à 19:00

non pas vraiment, car moi il m'importe peu d'afficher les fichiers (bien au contraire), je veux juste connaitre le nombre et l'afficher sur ma page index...

la raison pour laquelle je n'ai pas mis le sujet en réglé

ps : si je réponds avec du retard, c'est que depuis une semaine, j'ai de gros soucis pour accéder à au forum phpbb.fr
Relax Arcade Pro pour phpBB 3.1.12 et 3.2.x en libre téléchargement ainsi que des jeux Flash ou HTML5
FTH10
Posteur habitué
Posteur habitué
 
Messages: 217
Enregistré le: 09 Jan 2014 à 01:00

Re: Connaitre le nombre de fichier dans un dossier

Messagepar FTH10 » 29 Sep 2014 à 09:32

Bonjour,

Bon après plusieurs essais , j'ai réussi à afficher le nombre d'images que contient le dossier images. Voici mon code, j'attends un avis des codeurs, voir si c'est propre ou si c'est à repenser entièrement ;)

Ouvrir le fichier index.php

Trouvez :
Code: Tout sélectionner
// Did you know end


Ajoutez après :
Code: Tout sélectionner
// BEGIN Counted Images in file FranckTH
$dir = "images/";
$count_images == 0;
 
   if(is_dir($dir))
   {
      if($handle = opendir($dir))
    {
         while(false !== ($file = readdir($handle)))
        {
            if($file != "." && $file != "..")
        {
            if(!is_dir($dir . $file))
            {
            $count_images++;
        }
        }
	}     
    closedir($handle);
    }
}
// END Counted Images in file 


Ouvrir le fichier styles/prosilver/template/index_body.html

Trouvez :
Code: Tout sélectionner
<p>{TOTAL_POSTS} &bull; {TOTAL_TOPICS} &bull; {TOTAL_USERS} &bull; {NEWEST_USER}</p>


Ajoutez après :
Code: Tout sélectionner
<p>Nombre de fichiers dans le dossier image : {NUM_IMAGES}</p>


Bien évidemment, ll faut aussi que je créé une clef de langue... pour le moment j'obtiens bien le nombre exact de fichier que comporte le dossier images.

Edit : Je viens de me rendre compte que ça ne prend en compte les sous-dossiers :shock: :?
Relax Arcade Pro pour phpBB 3.1.12 et 3.2.x en libre téléchargement ainsi que des jeux Flash ou HTML5
FTH10
Posteur habitué
Posteur habitué
 
Messages: 217
Enregistré le: 09 Jan 2014 à 01:00

Re: Connaitre le nombre de fichier dans un dossier

Messagepar soda » 29 Sep 2014 à 10:28

Il te faut une fonction récursive (includes/functions.php semble être un bon endroit), comme par exemple:

Code: Tout sélectionner
function parcourir_repertoire($repertoire)
{
    $handle = opendir($repertoire);
    while(false !== ($file = readdir($handle)))
    {
        // enlever les traitements inutile
        if ($file == "." || $file == "..")
        {
            continue;
        }

        if(is_dir($repertoire.'/'.$file))
        {
            $count += parcourir_repertoire($repertoire.'/'.$file);
        }
        else
        
{
            $count++;
        }
    }

    closedir($handle);
    return $count;
}


Ensuite, il te manque l’assignation du compteur à une variable template dans index.php:

Code: Tout sélectionner
        $template->assign_var('NUM_IMAGES', parcourir_repertoire('images/'));
mais tu peux aussi te contenter de rajouter l'assignation dans le $template->assign_vars() déjà présent dans index.php
soda
Posteur expérimenté
Posteur expérimenté
 
Messages: 354
Enregistré le: 25 Déc 2006 à 12:55
Localisation: Sur mon cheval blanc

Re: Connaitre le nombre de fichier dans un dossier

Messagepar FTH10 » 29 Sep 2014 à 10:49

merciiiiiiiiiii infiniment soda pour ton aide ;)

Pour le coup j'obtiens bien le nombre exact de fichiers y compris avec les sous-dossiers ;)

Par contre hormis en array je n'ai pas trouvé dans l'index $template->assign_vars()
Relax Arcade Pro pour phpBB 3.1.12 et 3.2.x en libre téléchargement ainsi que des jeux Flash ou HTML5
FTH10
Posteur habitué
Posteur habitué
 
Messages: 217
Enregistré le: 09 Jan 2014 à 01:00

Re: Connaitre le nombre de fichier dans un dossier

Messagepar soda » 29 Sep 2014 à 13:56

FTH10 a écrit:Par contre hormis en array je n'ai pas trouvé dans l'index $template->assign_vars()

Oui je t'ai juste donné la méthode de la classe template appelé dans index.php, et non pas le code exacte présent.
soda
Posteur expérimenté
Posteur expérimenté
 
Messages: 354
Enregistré le: 25 Déc 2006 à 12:55
Localisation: Sur mon cheval blanc

Suivante

Retourner vers Coding, Webmastering et Sécurité informatique

 


  • Articles en relation
    Réponses
    Vues
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 4 invités