Oui, c'est ce que je voulais dire.
pas forcement cela dépend de ce que tu veux en faire deplus tu utilise un compteur qui sert a rien je t'ai retouché ton code :
ps: cela ne sert par exemple a rien de mettre media1 dans un tableau si tu veux seulement l'affiché
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 <?php include "connect.php"; $req=mysql_query("select avatar,media1 from log")or die(mysql_error()); //rajout de mysql error pour voir les erreurs sql if (mysql_num_rows($req)>0) { while ($row=mysql_fetch_array($req)) { $avatar[]=$row['avatar'];//tu n'as pas beosin du $i ton index s'increment automatiquement //je ne sais pas ce que tu veux faire de media1 } } else { die("no avatar in database"); } $dir = "images/avatars"; $dh = opendir($dir); while ($file = readdir($dh)) { if ($file != '.' && $file != '..') { $verif="<img src=images/avatars/".$file." border=0>"; if ( !in_array( $verif,$avatar ) ) { //tu n'avais beosin de faire que le else unlink ($dir."/".$file); } } } closedir($dh); ?>
en fait media1 (y en a 10 en tout) sont dans un autre dossier
images/photo
et je veux faire pareil qu'avec avatar
je te propose quelque chose comme ça:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 <?php function supp_photo($dir,$tab) { $dh = opendir($dir); while ($file = readdir($dh)) { if ($file != '.' && $file != '..') { $verif="<img src=".$dir."/".$file." border=0>"; if ( !in_array( $verif,$avatar ) ) { //tu n'avais beosin de faire que le else unlink ($dir."/".$file); } } } closedir($dh); } include "connect.php"; $req=mysql_query("select avatar,media1 from log")or die(mysql_error()); //rajout de mysql error pour voir les erreurs sql if (mysql_num_rows($req)>0) { while ($row=mysql_fetch_array($req)) { $avatar[]=$row['avatar'];//tu n'as pas beosin du $i ton index s'increment automatiquement $media1[]=$row['media1']; } } else { die("no avatar or no media1 in database"); } supp_photo("images/avatars",$avatar); supp_photo("images/photo",$media1); ?>
ca a l'air d'etre plus simple que ce que j'avais fais avec 10 array + 10 variable + la suite avec encore des array et des variable lol
bon bah essayage alors
merci
undefined variable :avatar on line 19
et in_array() function in array wrong datatype for second argument on line 19
excuse moi petit oubli remplace
par
Code : Sélectionner tout - Visualiser dans une fenêtre à part if ( !in_array( $verif,$avatar ) )
Code : Sélectionner tout - Visualiser dans une fenêtre à part if ( !in_array( $verif,$tab ) )
tu est pardonné surtout que t'as resolu mon probleme
c'est sympa
juste pour optimiser le code (vu que j'ai 10 média en tout)
est ce que je peux faire
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 for($i=1;$i<=10;$i++){ $media.$i.[]=$row['media'.$i]; }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 for($i=1,$i<=10,$i++){ supp_photo("images/photo",$media.$i); }
c'est bizarre mais ca efface tout les fichiers media
mais les avatars c'est bon
j'ai compris mon erreur en faite
la je dis compare toutes les colonnes media en meme temps et si c'est pas dans la 1 c'est peut etre dans les suivantes mais vu que cela efface directe...
raaahhhh
comment je peux faire pour d'abord verifier et après supprimer ou bien verifier toutes les colonnes en meme temps...
essaye ça
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 <?php function supp_photo($dir,$tab) { $dh = opendir($dir); while ($file = readdir($dh)) { if ($file != '.' && $file != '..') { $verif="<img src=".$dir."/".$file." border=0>"; if ( !in_array( $verif,$avatar ) ) { //tu n'avais beosin de faire que le else unlink ($dir."/".$file); } } } closedir($dh); } include "connect.php"; $req=mysql_query("select avatar,media1 from log")or die(mysql_error()); //rajout de mysql error pour voir les erreurs sql if (mysql_num_rows($req)>0) { while ($row=mysql_fetch_array($req)) { $avatar[]=$row['avatar'];//tu n'as pas beosin du $i ton index s'increment automatiquement for($i=1;$i<=10;$i++){ $media[$i][]=$row['media'.$i]; } } } else { die("no avatar or no media1 in database"); } supp_photo("images/avatars",$avatar); for($i=1;$i<=10;$i++){ supp_photo("images/photo",$media[$i]); } ?>
ok j'essaye mais j'ai un peu modifier la requete
$req=mysql_query("select avatar,media1, media2, media3, media4, media5, media6, media7, media8, media9, media10 from log")or die(mysql_error());
et tous les medias sont contenu dans le meme dossier donc quand on verifie media1 cela efface tout ce qui n'est pas dedans donc aussi media2&3&4...
oui il faut changer la requete sql
et en faite j'ai fais une erreur comme cela:
précision si tu ne te ressers pas du résultat ensuite dans ton code tu peux même faire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 <?php function supp_photo($dir,$tab) { $dh = opendir($dir); while ($file = readdir($dh)) { if ($file != '.' && $file != '..') { $verif="<img src=".$dir."/".$file." border=0>"; if ( !in_array( $verif,$tab ) ) { //tu n'avais beosin de faire que le else unlink ($dir."/".$file); } } } closedir($dh); } include "connect.php"; $req=mysql_query("select avatar,media1,... from log")or die(mysql_error()); //rajout de mysql error pour voir les erreurs sql if (mysql_num_rows($req)>0) { while ($row=mysql_fetch_array($req)) { $avatar[]=$row['avatar'];//tu n'as pas beosin du $i ton index s'increment automatiquement for($i=1;$i<=10;$i++){ $media[$i][]=$row['media'.$i]; } } } else { die("no avatar or no media1 in database"); } supp_photo("images/avatars",$avatar); supp_photo("images/photo",$media[]);/on passe tout les medias ?>
$media[]=$row['media'.$i]; tu ne pourras plus distingué les media1 des media2 par contre
au lieu de $media[$i][]=$row['media'.$i];
merci les gars
cela fonctionne
juste pour info
par
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $media[$i][]=$row['media'.$i.''];
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $media[$i][]=$row['media'.$i];
par
Code : Sélectionner tout - Visualiser dans une fenêtre à part supp_photo("images/photo",$media[]);
merci boo et bartrik
Code : Sélectionner tout - Visualiser dans une fenêtre à part supp_photo("images/photo",$media);
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager