[Tableaux] in_array donne résultats inattendus
Bonjour à tous,
J'ai une table SQL contenant un champ image....et un dossier contenant des images. Mon but est de détecter les images du dossier qui ne sont pas dans la table de façon à les supprimer...
Je récupère les images du dossier dans un tableau
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
$rep=opendir('images');
while ($file = readdir($rep)) {
if($file != '..' && $file !='.' && $file !='')
{
$liste_image[] = $file;
}
}
closedir($rep); |
Puis une requete toute bête récup les noms d'image dans la table
et je teste si les images dossier sont présentes dans la table. Je cherche donc si les éléments du tableau $liste_image sont présents dans le tableau $row
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
$sql=mysql_query("SELECT image FROM table WHERE image != ''");
$i = 0;
while ($row = mysql_fetch_row($sql)){
if(!in_array( $liste_image[$i],$row)){
echo "l'image ".$liste_image[$i]." n'est pas dans la table<br>";
}
$i++;
} |
Ben ça fonctionne pas, ça affiche toutes les images de la table...
:aie: