Lister les fichiers d'un sous-répértoire PHP
Résolu
Yazou92
Messages postés
208
Statut
Membre
-
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
- Wetransfer gratuit fichiers lourd - Guide
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