Lister un dossier puis comparer a une bdd [Résolu]

Signaler
Messages postés
253
Date d'inscription
lundi 27 février 2006
Statut
Membre
Dernière intervention
5 décembre 2008
-
Messages postés
253
Date d'inscription
lundi 27 février 2006
Statut
Membre
Dernière intervention
5 décembre 2008
-
bonjour je cherche a recuperer tout les fichiers contenus dans un dossier
et les comparer a la colonne correspondante de ma bdd

voila jarrive bien a "extraire" mes images du dossier et de ma bdd

mais j'arrive pas a comparer les deux...

j'ai deux boucles while qui m'affiche les images mais après j'y arrive pluuuuuus

voila si quelqu'un peut maider merci

8 réponses

Messages postés
253
Date d'inscription
lundi 27 février 2006
Statut
Membre
Dernière intervention
5 décembre 2008
1
voila j'ai trouvé

cela me permet de savoir quel fichier sont dans ma bdd et dans mon dossier
puis d'effacer ceux en trop dans mon dossier

<?php
function supp_photo($dir,$tab){

$dh = opendir($dir);
while($file = readdir($dh)){
if($file != '.' && $file != '..'){
$verif=".$dir."/".$file." border=0>";
if( !in_array($verif,$tab)){ 
unlink ($dir."/".$file);
}
}
}
closedir($dh);
}
include"connect.php";
$req=mysql_query("select avatar,media1,... from log")or die(mysql_error()); 
if(mysql_num_rows($req)>0){
while($row=mysql_fetch_array($req)){
$avatar[]=$row['avatar'];
 for($i=1;$i<=10;$i++){            
$media[$i][]=$row['media'.$i.''];
}
}
}else{
die("no avatar or no media in database");
}
supp_photo("images/avatars",$avatar);
supp_photo("images/photo",$media);
Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
4
salut


ce serait bien de voir le code...
Messages postés
1980
Date d'inscription
dimanche 20 février 2005
Statut
Membre
Dernière intervention
24 septembre 2012
5
Hello,

peux-tu expliciter ce que tu veux faire et le problème que tu as ? et mettre le code que tu as déjà fait.
à+
Messages postés
253
Date d'inscription
lundi 27 février 2006
Statut
Membre
Dernière intervention
5 décembre 2008
1
voila le code et les explications

donc j'ai un dossier avec des images dedans et une bdd avec le lien des images
et je voudrais que cette page serve a effacer les images qui ne sont plus dans ma bdd
mais j'arrive meme pas a faire la comparaison des deux j'arrive seulement avec la premiere
après......

<?php
include "connect.php";
$req1=mysql_query("select avatar from log");
$result1=mysql_num_rows($req1); 

 $i=1;
 while ($i < $result1){
 $result3=mysql_fetch_array($req1);//on met le résultat dans un tableau
 echo "<tr><td>"
 .$result3['avatar']."
 </td></tr>";
 $i++;
 
 }echo "</table>
";

$result2=mysql_fetch_array($req1, MYSQL_BOTH);

$o=0;
$dir = "images/avatars";
$dh = opendir($dir);

        while ($file = readdir($dh)) {
  $verif=" ";
       if ($file != '.' && $file != '..') {
  if ($verif != $result2['avatar']) {
  echo "

$o
ce n'est pas ce fichier :
".$file."
".$verif."

";
  } elseif ($verif == $result2['avatar']) {
  echo "

$o
c'est ce fichier :
".$file."
".$verif."

";
  } $o++; 
  }}

closedir($dh);
?>
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Hello,

donne un exemple de ce que tu as dans ta bdd, un de ces liens. Il y a la baliase ou c'est juste le nom du fichier image ?
Messages postés
253
Date d'inscription
lundi 27 février 2006
Statut
Membre
Dernière intervention
5 décembre 2008
1
salut,

je stocke le lien des mes images dans la bdd
(image que j'ai téléchargé avant)

 
Messages postés
253
Date d'inscription
lundi 27 février 2006
Statut
Membre
Dernière intervention
5 décembre 2008
1
Personne pour m'aider
Messages postés
253
Date d'inscription
lundi 27 février 2006
Statut
Membre
Dernière intervention
5 décembre 2008
1
bon j'ai avancer un peu mais bon ca fonctionne a moitié

<?php
include "connect.php";
$req1=mysql_query("select avatar from log");
$result1=mysql_num_rows($req1);
$avatar = array(); // tableau de stockage
echo "\";
if ($result1 && mysql_num_rows($req1)>0) {
 $i=1;
 while ($row=mysql_fetch_array($req1)) {
  $avatar[$i]=$row['avatar'];
  echo \"----
".$avatar[$i].", \";
  $i++;
 }
} else {
 die(\"no avatar in database\");

echo "

";
 
$dir = "images/avatars";
$dh = opendir($dir);
 while ($file = readdir($dh)) {
  if ($file != '.' && $file != '..') { 
   $verif=""; 
   for($o=1;$o<=$i;$o++) {
    if ($verif != $avatar[$o]) {
    echo"

$o
ce n'est pas ce fichier :
".$file."
".$verif."

";
   } elseif ($verif == $avatar[$o]){
    echo"

$o
c'est ce fichier :
".$file."
".$verif."

";
   }
  }
 }}
closedir($dh);
?>