Lister les fichiers d'un sous-répértoire PHP
Résolu
Yazou92
Messages postés
181
Date d'inscription
Statut
Membre
Dernière intervention
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
Je fait actuellement un petit site qui permet de scanner un dossier et de lister tout les fichiers video.
Ce que je n'arrive pas a faire c'est de scanner les sous-dossier de mon dossier racine et d'ajouter ces fichiers à ma base de donnée, car mon code me permet d'ajouter que les films dans le dossier racine.
Voila mon Code: si quelqu'un à une solution merci d'avance les gars ^^
Je fait actuellement un petit site qui permet de scanner un dossier et de lister tout les fichiers video.
Ce que je n'arrive pas a faire c'est de scanner les sous-dossier de mon dossier racine et d'ajouter ces fichiers à ma base de donnée, car mon code me permet d'ajouter que les films dans le dossier racine.
Voila mon Code: si quelqu'un à une solution merci d'avance les gars ^^
<?php include_once 'function.inc.php'; $dsn = "mysql:host=localhost;dbname=dvix"; $user = "root"; $password = ""; try { $db = new PDO($dsn, $user, $password); } catch (PDOException $e) { die("Erreur !:" . $e->getMessage()); } $prepareStatement = $db->query("SELECT n_file FROM t_film "); $connect = $prepareStatement->fetchAll(); $rep = "F:\DVD"; $dir = opendir($rep); while ($file = readdir($dir)) { if (($file != ".") && ($file != "..")) { $info = pathinfo($file); $found = false; foreach ($connect as $value) { if ($value['n_file'] == $file) { $found = true; break; } } if ($found == false) { $statement = "INSERT INTO t_film (n_file,n_title,n_synopsis,n_ctg,n_date) VALUES ('$file','".$info['filename']."','','".$info['extension']."',' ')"; $db->exec($statement); } } } header('Location: index.php'); ?>
A voir également:
- Lister les fichiers d'un sous-répértoire PHP
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment ouvrir un fichier bin ? - Guide
- Renommer des fichiers en masse - Guide
- Répertoire téléphonique gratuit - Télécharger - Bureautique
1 réponse
Bonjour,
Il va falloir se la jouer récursif pour bien faire :
Pas testé, mais c'est l'idée.
Il va falloir se la jouer récursif pour bien faire :
function scan($rep) { global $db; $dir = opendir($rep); while ($file = readdir($dir)) { if (($file != ".") && ($file != "..")) { if (is_dir($rep.$file)) { scan($file); } else { $info = pathinfo($file); $found = false; foreach ($connect as $value) { if ($value['n_file'] == $file) { $found = true; break; } } if ($found == false) { $statement = "INSERT INTO t_film (n_file,n_title,n_synopsis,n_ctg,n_date) VALUES ('$file','".$info['filename']."','','".$info['extension']."',' ')"; $db->exec($statement); } } } } } scan("F:\DVD");
Pas testé, mais c'est l'idée.
Bonne journée