Code permetant une maintenance image-base mysql

alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007 - 12 juin 2004 à 12:55
alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007 - 15 juin 2004 à 02:23
Bonjour,
Voila je cherche un code qui permet de parcourir tout un dossier à la recherche de mes images et savoir si chaque fichier est present dans ma base.

Si ce fichier y est OK !
Si fichier pas dans la base alors me l'indiquer.

Voila si quelqu un a ça sous la main c est le meilleur !

;-)
Bon Courage à tous moi je galere a trouver ça mais bon ...
Si je poste c est pas pour rien lol

:-)

21 réponses

coockiesch Messages postés 2268 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 13 septembre 2013 4
12 juin 2004 à 14:14
Salue!
Je viens de code ca, ca à l'air de fonctionner, je te laisserai faire le test pour ta bdd à l'endroit ou j'affiche le fichier

<?php
function list_folder($dossier)
{
$rep = opendir($dossier);

while($file = readdir($rep))
{
if(is_dir($dossier . $file) && $file != '.' && $file != '..')
{
list_folder($dossier . $file . '/');
continue;
}

$ext = substr($file, -3);if($ext 'jpg' || $ext 'gif' || $ext == 'pnj')
echo $dossier  . $file . '
';
}

closedir($rep);
}

list_folder('folder/'); // dossier de départ
?>


@++

R@f

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
0
alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007
13 juin 2004 à 20:20
Salut !
Tout dabord Merci.

Ensuite avec mes quelques connaissances je crois comprendre que ton script liste et affiche tout le contenu du repertoire.

Si c est bien je vois pas coment je pourrais faire la comparaison entre ce que je trouve dans ma bd et ton code.

(en gros si tu pouvais me le f....)

En tout cas Thank you ::!!!
0
alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007
13 juin 2004 à 20:23
au fait toutes mes images sont en jpg
0
coockiesch Messages postés 2268 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 13 septembre 2013 4
13 juin 2004 à 20:42
Ok, pitit exemple:
<?php
function list_folder($dossier)
{
$rep = opendir($dossier);

while($file = readdir($rep))
{
if(is_dir($dossier . $file) && $file != '.' && $file != '..')
{
list_folder($dossier . $file . '/');
continue;
}

if(substr($file, -3) == 'jpg')
{
// table: table_images
// champ: fichier
$sql_query = "SELECT id FROM table_images WHERE fichier='" . $dossier . $file . "'";
$result = mysql_query($sql_query);

if(!$result)
return;

if(mysql_num_rows($result) == 0)
// ici tu fais l'insertion
}
echo $dossier . $file . '
';
}

closedir($rep);
}

list_folder('folder/'); // dossier de départ
?>


@++

R@f

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007
13 juin 2004 à 21:15
Salut encore merci de ta rapidité et tes efforts
j ai un soucis par rapport à ton script c est que dans ma base
il y a juste le nom du fichier et pas du rep+fichier

j arrive pas à le virer de ton script

Merciiiiiiii
0
coockiesch Messages postés 2268 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 13 septembre 2013 4
13 juin 2004 à 22:09
Hello!
$sql_query = "SELECT id FROM table_images WHERE fichier='" . $dossier . $file . "'";

-->
$sql_query = "SELECT id FROM table_images WHERE fichier='$dossier'";


@++

R@f

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
0
alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007
13 juin 2004 à 22:22
salut jai une erreur

..........
..................
if(mysql_num_rows($result) == 0)
// ici tu fais l'insertion
} CETTE LIGNE L ERREUR

Parse error: parse error, unexpected '}'

je voulais savoir ce que tu entends par
// ici tu fais l'insertion

Merci en tout cas t es super
0
alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007
14 juin 2004 à 00:49
depuis tout a l heure je galere

j ai fait ça


<?php
include("connexion_sql.php");

function list_folder($dossier)
{
$rep = opendir($dossier);

while($file = readdir($rep))
{
if(is_dir($dossier . $file) && $file != '.' && $file != '..')
{
list_folder($dossier . $file . '/');
continue;
}
$req="SELECT id FROM basephoto WHERE photo LIKE '%$file%'"; 

$res=mysql_query($req);
$nbrows = mysql_num_rows($res);
if($nbrows==0)
{
echo $dossier . $file . '
';
}
else
echo"";

}

closedir($rep);
}

list_folder('photo/'); // dossier de départ
?>



et bien rien a faire ça me sort tout le contenu de mon rep
Au secours plzzzzzz
Merci ::!!
0
coockiesch Messages postés 2268 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 13 septembre 2013 4
14 juin 2004 à 13:05
Salut!
Essaie ca:
<?php
include("connexion_sql.php");

function list_folder($dossier)
{
$rep = opendir($dossier);

while($file = readdir($rep))
{
if(is_dir($dossier . $file) && $file != '.' && $file != '..')
{
list_folder($dossier . $file . '/');
continue;
}
$req="SELECT id FROM basephoto WHERE photo LIKE '%$file%'";

$res=mysql_query($req) or die(mysql_error());
if(mysql_num_rows($res) == 0)
{
echo $dossier . $file . '
';
}
else
echo"";

}

closedir($rep);
}

list_folder('photo/'); // dossier de départ
?>


Et essaie un truc:
// templace test.jpg par une image que tu es sûr qu'elle est dans la base
$req="SELECT id FROM basephoto WHERE photo LIKE '%test.jpg%'";

$res=mysql_query($req) or die(mysql_error());
if(mysql_num_rows($res) == 0)
echo 'non trouvé';
else
echo 'trouvé';


@++

R@f

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
0
alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007
14 juin 2004 à 13:24
ça fait:

trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/trouvé/

etc.......
0
alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007
14 juin 2004 à 13:28
y a pas un probleme de boucle?
0
alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007
14 juin 2004 à 13:39
attend le probleme
c est pas les /
entre les trouvé ça devrait pas y etre non?
0
alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007
14 juin 2004 à 13:46
ow j ai fait

le meme code avec

$req="SELECT id FROM basephoto WHERE photo ='a5e3c817b85cf.jpg'";

$res=mysql_query($req) or die(mysql_error());
if(mysql_num_rows($res) == 0)
echo 'non trouvé';
else
echo 'azeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee';

}

closedir($rep);
}

list_folder('photo/'); // dossier de départ
?>



l image y est je suis sur je la vois

en excetutant le script ça me sort

trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvénon trouvé
0
coockiesch Messages postés 2268 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 13 septembre 2013 4
14 juin 2004 à 15:57
Salut!
T sûr du like?

@++

R@f

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
0
alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007
14 juin 2004 à 16:43
en fait j ai tellement bossé dessus que j ay voyé plus bien

non avec le like ça fait ça

trouvétrouvétrouvétrouvétrouvétrouvétrouvétrouvétrouvétrouvétrouvétrouvé .............................
0
alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007
14 juin 2004 à 16:49
en fait il trouve tout c est pas normal
meme index.html
mdr plutot non pas mdr ça me soule
STp HElp Me !
0
coockiesch Messages postés 2268 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 13 septembre 2013 4
14 juin 2004 à 17:17
Salut!
Je t'ai mis, il faut faire le test que si c image: if(substr($file, -3) == 'jpg')

@++

R@f

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
0
alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007
14 juin 2004 à 17:26
autre chose qui pourra peut etre t aider

dans ma table j ai des enregistrement et dans le champ photo j ai les noms des images blabla.jpg||0||dddss||fichierjpg.jpg||....

c juste pour indication
0
alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007
14 juin 2004 à 17:29
j ai rajouté ton test

donc si a like je met le nom du fichier il me dit trouvétrouvétrouvé

si je met $file il me dit non trouvénon trouvé....

je désepere
0
coockiesch Messages postés 2268 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 13 septembre 2013 4
14 juin 2004 à 20:28
Salut!
La suite par MSN ou MP, me faudrait voir la structure de ta base et tout...

Le mieux serait un export de ta base, par mail. Si tu es d'accord, on se contact par MP

@++

R@f

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
0