Supprimer photos qui ne sont pas dans la base
bonjour
je n'arrive pas a afficher tous les noms de photos à virer... il m'indique que le 1er et pourtant il y en a plus de 10.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
if($opdossier = opendir('./photos'))
{
while(false !== ($fichier = readdir($opdossier)))
{
if($fichier != '.' && $fichier != '..' && $fichier != 'index.html' && $fichier != 'nofoto.png')
{
$photo = $bdd->query("SELECT photo FROM annonce WHERE photo != 'a:0:{}'");
$photos = $photo->fetchall();
foreach ($photos AS $visufoto)
{
if (!empty($visufoto['photo']))
{
$listfoto = unserialize($visufoto['photo']);
if (in_array($fichier, $listfoto))
{
$okfoto = 1;
}
}
}
if (!isset($okfoto) AND !empty($visufoto['photo'])){
echo "a virer :".$fichier."<br>";
//unlink ("./photos/$fichier");
unset($okfoto);
}
}
}
}
closedir($opdossier); |
je ne sais pas si on peut vérifier directement en sql comme mon champ photo et serializé