Dates et delete

Mathieu
Invité n'ayant pas de compte PHPfrance

18 oct. 2006, 14:06

Bonjour à tous

Comment supprimer un enregistrement dans une table Mysql a une date précise?

Par exemple j'insert des données dans une table et en même temps je rempli un champs avec la date d'insertion et un champs avec la date a la quelle cette enregistrement devra être supprimé.

Merci de me conseiller :-)
j'ai beau chercher dans des tutaux j'trouve pas

Mathieu

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

18 oct. 2006, 14:29

J'ai pas bien compris si la question portait sur la suppression en elle même ou sur la plannification de celle-ci, alors dans le doute, t'auras les deux ;)

A une date spécifique :

Code : Tout sélectionner

DELETE FROM maTable WHERE datePeremption = '2006-12-01'
ou bien sur une période

Code : Tout sélectionner

DELETE FROM maTable WHERE datePeremption >= '2006-01-01' AND datePeremption <= '2006-12-31'
Quant à l'automatisation de la chose, si tu as la possibilité sur ton serveur tu peux utiliser une Crontab ou le Plannificateur de Tâches. Sinon, il y a un site (j'ai plus l'url mais tu la trouveras sur le forum, ça doit crontab.org ou un truc du genre) sur lequel tu peux t'inscrire et plannifier l'exécution de scripts sur ton site en spécifiant leur url :)

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

18 oct. 2006, 14:45

Le type TIMESTAMP est prévu pour stocker automatiquement l'heure courante lors d'une commande INSERT ou UPDATE. Si vous avez plusieurs colonnes de type TIMESTAMP, seule la première colonne sera mise à jour automatiquement.
Pour la date d'insertion ou de modif :)
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

Mammouth du PHP | 2937 Messages

18 oct. 2006, 14:48

Salut!
Quant à l'automatisation de la chose, si tu as la possibilité sur ton serveur tu peux utiliser une Crontab ou le Plannificateur de Tâches. Sinon, il y a un site (j'ai plus l'url mais tu la trouveras sur le forum, ça doit crontab.org ou un truc du genre) sur lequel tu peux t'inscrire et plannifier l'exécution de scripts sur ton site en spécifiant leur url :)
Le site en question est webcron.org. Pour l'exécution périodique de scripts, voir cet article. :wink:

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

18 oct. 2006, 14:56

Le site en question est webcron.org.
Merci, j'arrivais pas à remettre la main dessus :)

Invité
Invité n'ayant pas de compte PHPfrance

18 oct. 2006, 19:44

Merci Ryle et les autres


J'ignorais que ce fut si simple.

Je pense qu'il n'y a pas besoin d'automatisation cela pourrai peut-être se faire au moment de l'affichage.
La question que je me pose maintenant, c'est comment dans le formulaire de saisie je vais programmer cette date de suppression pour que le champs "date de péremption" contienne: 2006 12 31

Ce serai peut-être plus simple de prévoir un nombre de jours de "validité" avec une liste de sélection déroulante.


En fait j'y connais pas grand chose et serai content de trouver un bon tutorial sur le sujet :-)

Merci et bonne soirée
Mathieu

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

18 oct. 2006, 23:34

Bah tout dépend de ce que tu veux faire exactement :)

Jette un coup d'oeil dans le forum FAQ au topic "Quelques petites manipulations avec les dates (PHP/MySQL)" ça devrait te donner quelques idées pour déterminer une date de péremption :)