Supprimer des images

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Supprimer des images

par kevinf » 17 juin 2006, 16:31

Oui, j'en ai fais pas mal, et pendant pas mal de temps, encore merci ;)

par Truc » 17 juin 2006, 13:30

C'est vraiment parce que le sujet est ouvert depuis quelque jours et j'imagine que tu as tout de même effectué des tests.

par kevinf » 17 juin 2006, 13:24

Super!

Merci beaucoup de ton aide et de ta patience. ;)

++

par Truc » 17 juin 2006, 11:57

<?php
$extensions_ok = array('png', 'gif', 'jpg', 'jpeg'); 

$curtime = time(); // recupere la date courante (secondes)
$maxdelay = 60 * 24 * 60 * 60; // delai max de peremption de fichiers : 60 jours (en secondes)
if ($handle = opendir('.')) 
{
   while (false !== ($file = readdir($handle))) 
   {
      if ($file != "." && $file != "..") 
      {          
         if(in_array( substr(strrchr($file, '.'), 1), $extensions_ok ) )
         {
               if($curtime-filemtime($file)>$maxdelay)
                   unlink($file); // suppression du fichier
               else
                   echo "$file<br>\n";
           }
       }
   }
closedir($handle);
}
?>

par kevinf » 17 juin 2006, 07:40

Pourriez vous me finir le code avec les extensions autorisé, s'il vous plait, car je n'y arrive pas.

par kevinf » 16 juin 2006, 08:43

Non, je ne laisse jamais tomber, c'était juste pour te dire que le temps que je regarde tout ca, donc maintenant, c'est bon, ca venant de mon forum.
Maintenant le code ...

par Truc » 16 juin 2006, 00:41

Bon, et bien merci, mais je viens d'etre hacker
Et donc ?
Tu laisse tomber ?

en tout cas ce n'est pas ce bout de code qui a permis ce piratage.

par kevinf » 15 juin 2006, 08:22

Bon, et bien merci, mais je viens d'etre hacker, tout mon site est partie en fumer, je suis très énervé!

La signature du hacker!! :

Image

par Truc » 15 juin 2006, 00:01

regarde ça de près ensuite c'est le même principe suffit d'y inclure ton test sur le temps dans l'une ou l'autre condition
if ($file != "." && $file != "..") 
{
     if(in_array( substr(strrchr($file, '.'), 1), $extensions_ok ) ) 
                echo 'un message de test... se passe quoi ici pour '.$file.' ?<br>'; 
      else 
               echo 'autre message concernant le fichier '.$file.'<br>';  
} 

par kevinf » 14 juin 2006, 23:53

Oui, j'ai copris ca, c'est la liste des extensions autorisé, mais pour le reste...


Aide moi, please.

par Truc » 14 juin 2006, 23:46

Bon tu as compris ce qu'est "$extensions_ok" dans l'exemple ?

ensuite pour tester les fonction affiche leur traitement tout simplement.
echo strrchr($file,'.'); 
De même pour les autres

par kevinf » 14 juin 2006, 23:41

Je parle de clui ci :
<?php 
$curtime = time(); // recupere la date courante (secondes) 
$maxdelay = 60 * 24 * 60 * 60; // delai max de peremption de fichiers : 60 jours (en secondes) 
if ($handle = opendir('.')) { 
   while (false !== ($file = readdir($handle))) { 
       if ($file != "." && $file != "..") { 
           if($curtime-filemtime($file)>$maxdelay) 
               unlink($file); // suppression du fichier 
           else 
               echo "$file<br>\n"; 
       } 
   } 
   closedir($handle); 
} 
?> 
Après pour les extensions autorisé, je n'y arrive pas ... :oops:

par Truc » 14 juin 2006, 23:38

C'est cool puisque tu l'as fait (plus ou moins) seul....
tu peux peut etre le déposer ici pour d'autres utilisateurs :)

par kevinf » 14 juin 2006, 23:25

J'ai quand même réussi a faire le code :oops:

par Truc » 14 juin 2006, 23:23

comment l'adapter avec mon code?
essai d'y aller par étapes: fonction par fonction pour comprendre ce qui se passe.
Je n'ai pas pour habitude de donner des codes à copier coller... mais si tu montres que tu as fait des essais je veux bien te guider mais pas dans le cas contraire.

Il y a une suite de fonctions:
in_array()
substr()
strrchr()
Regarde la doc pour leur utilité.

$_FILES['photo']['name'] est le nom du fichier donc pour ton cas "$file".