01net    Web


Actuellement en ligne : 860 Utilisateurs dont 22 dans Programmation et développement >S'inscrire      >S'identifier      >Recherche      >Aide  
modéré par A.Ouloube, Beno@  
01net > Forum de 01net > Programmation et développement > PHP
> otomate-> suprimer automatiquement une donnée de Bdd[resolu]
Passionné(e) d'internet, de logiciels, de forums ? 01net recrute...
Auteur
Message
 
<     1       >
radioMCD
  
  :-)
      ?   ^   @     Posté le 20/11/2007 18:18:36  
Voter pour ce message
bonjour a tous

merci d'avance pour votre aide !

voici mon souci, depuit peut j'ai mis en place un système pour bannir un auditeur qui "agresse l'animateur" via les dedicace car cela perturbe l'animateur, de plus certain auditeur utilise plusieur pseudonyme, cela m importe peu car les membre inscrit on l'oportunité de ce connecté pour assuré que ce nais pas une autre personne qui utilise leur Pseudo.

Pour bloké les auditeur non identifier j'utilise donc l' IP cela marche à merveille, biensur ce nai pas a 100% fiable mais entre nous y a t'il beaucoup de monde qui sache comment faire pour passé ce control.

donc voici mon problème, j'utilise la base de donnée pour enregistré les Ip banni.
3 niveau de ban, niveau 1= 1 journée, niveau 2= 1 semaine, niveau 3= 1 moi

donc dans Dbb j'enregistre l'Ip le niveau et la date du bannisement.

pour débannir sa ce fait manuellement, et dans les jour a venir j aimerais que cela ce face automatiquement!

mais comment ? sachan que cela utilise le niveau et la date !
:sweat:

-->Message édité par radioMCD le 09/01/2008 00:52:46<--
cff
  
  :-)
      ?   ^   @     Posté le 21/12/2007 23:02:18  
Voter pour ce message
Salut, :hello:

Il te faut donc un script qui fasse le travail en trois passes et dont la logique serait :

Définir la date du jour = date0,
Définir date0 - 1 jour = date1,
Définir date0 - 1 semaine = date2,
Définir date0 - 1 mois = date3,

Supprimer dans la BDD tous les enregistrements où niveau = 1 et date = date1,
Supprimer dans la BDD tous les enregistrements où niveau = 2 et date = date2,
Supprimer dans la BDD tous les enregistrements où niveau = 3 et date = date3.

Tu peux placer un appel de ce script sur la page d'index de ton site, l'idéal serait d'enregistrer une variable dans la BDD ou un simple fichier texte pour indiquer la date du dernier traitement, si cette date correspond à la date du jour, inutile d'exécuter le script (ce qui économise 3 requetes MySQL).

C'est exprès que je te donne la logique du script et non pas le code, afin que tu puisses l'adapter pleinement à ton site. Si jamais tu avais besoin de plus de précisions sur le code en lui même, n'hesites pas à demander...
-------
Un site d'entraide informatique ne peut exister que grace à vous !

Alors n'hésitez pas à visiter : cff99.com
lognaume
  
  :-)
      ?   @     Posté le 22/12/2007 23:51:11  
Voter pour ce message
Salut,
Si jamais il ne sert à rien de bannir une ip plus de 24h, car 99% des gens ont une ip dynamique qui change chaque 24h.
Et les quelques rares personnes qui ont une ip fixe ne sont pas trop du genre à venir insulter les animateurs (les ip fixes servent pour les serveurs surtout).
-------
On peut rire de tout, mais pas avec n'importe qui...
lognaume
  
  :-)
      ?   @     Posté le 24/12/2007 00:17:51  
Voter pour ce message
Alors c'est une différence France/Suisse, ici c'est toutes les 24h ;)
Au temps pour moi.
-------
On peut rire de tout, mais pas avec n'importe qui...
radioMCD
  
  :-)
      ?   ^   @     Posté le 09/01/2008 00:49:39  
Voter pour ce message
cff a écrit :
Salut, :hello:

Il te faut donc un script qui fasse le travail en trois passes et dont la logique serait :

Définir la date du jour = date0,
Définir date0 - 1 jour = date1,
Définir date0 - 1 semaine = date2,
Définir date0 - 1 mois = date3,

Supprimer dans la BDD tous les enregistrements où niveau = 1 et date = date1,
Supprimer dans la BDD tous les enregistrements où niveau = 2 et date = date2,
Supprimer dans la BDD tous les enregistrements où niveau = 3 et date = date3.

Tu peux placer un appel de ce script sur la page d'index de ton site, l'idéal serait d'enregistrer une variable dans la BDD ou un simple fichier texte pour indiquer la date du dernier traitement, si cette date correspond à la date du jour, inutile d'exécuter le script (ce qui économise 3 requetes MySQL).

C'est exprès que je te donne la logique du script et non pas le code, afin que tu puisses l'adapter pleinement à ton site. Si jamais tu avais besoin de plus de précisions sur le code en lui même, n'hesites pas à demander...



re boujour

aprés quelque mois d absence, je me suis remis à programmé, toujour en vouloir savoir comment faire pour mon automate.

donc mon problème est résolut


$timestamp = time() - 86400; // 24 heures
$date_1 = date("Y-m-d H:i:s", $timestamp);
$delete = "DELETE FROM ban WHERE date < '$date_1'";
$query = "mysql_query($delete)";


voici un bou de mon script, me reste plus cas élaboré mon programme.

merci à tout le monde
<     1       >

01net > Forum de 01net > Programmation et développement > PHP
> otomate-> suprimer automatiquement une donnée de Bdd[resolu]

Aller à :

Page générée en : 0.176s - X2board 2.2

Nous contacter | Charte de confiance | Voir notice légale

Tous droits réservés © 1999 - 2008 Groupe Tests - 01net.


Sites du réseau 01net Network : 01net - 01men - Rmc.fr - Bfmtv.fr - Radiobfm.com - TousLesPodcasts - Micro Achat

PC Booster
Un logiciel pratique pour optimiser et améliorer les performances de votre PC. 
Intel Developer Forum
Puces grapiques, mobiles, quadricoeurs,... L'avenir de vos PC s'est dévoilé à San Francisco