Bonjour,
L'upload de photo fonctionne très bien, en enregistrant la photo dans un dossier spécifié du serveur, et le nom de cette photo dans un champs de la base de donnée.
Pour différentes raisons, des photos peuvent être enregistrées malgré leur inutilité sans inscrire leur nom dans la base de donnée (c'est cette faille que je compte exploiter).
Je voudrais de temps en temps exécuter un script visant à supprimer ces photos inutiles du serveur. Je pense être proche de la solution, mais il me manque le ptit quelque chose ...... comme d'habitude.
Voici le script auquel je pense:
Je pense que le problème vient de la variable $photo, puisqu'elle ne contient qu'une valeur alors qu'il faudrait qu'elle contienne toutes les valeurs inscrites dans la base de donnée auxquelles je ne veux pas toucher.
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
32
33
34
35
36 // On se connecte à la base $link = mysql_connect("...", "...", "..."); mysql_select_db("..."); // On crée la requête dans la table qui se nomme annonce $select = "SELECT * FROM annonces"; $result = mysql_query($select,$link); $data = mysql_fetch_array($result); $photo = $data['photo']; // On ouvre le dossier. $dossier = "Photos"; $repertoire = opendir($dossier); // On lance notre boucle qui lira les fichiers un par un. while($fichier = readdir($repertoire)) { // Si le contenu du répertoire est différent de la variable photo, on supprime if($fichier != ".." AND $fichier != "." AND $fichier != $photo) { unlink("Photos/$fichier"); } else { echo 'FICHIERS NON SUPPRIMES CAR PRESENTS DANS LA BASE DE DONNEE'; } } closedir($repertoire); // On ferme !
Merci à qui m'enlèvera cette aiguille à tricoter du pied![]()
Partager