IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Supprimer une entrée toutes les 24h


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 203
    Points : 82
    Points
    82
    Par défaut Supprimer une entrée toutes les 24h
    Bonjour,

    Je souhaite supprimer des entrées (qui ont été saisies au moins 23h/24h avant) dans une table toutes les 24h sachant qu'une tâche cron ne s'exécute au minimum toutes les heures.

    Le script s'exécute toutes les heures pour supprimer les entrées qui ont été saisies au moins 23h/24h avant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $nettoyage = $pdo->exec('DELETE FROM connexion WHERE date_essais > DATE_SUB(NOW(), INTERVAL 23 HOUR)');
    Le problème c'est que les entrées sont supprimées à la première exécution du script. il y a peut-être une erreur?

    Je vous remercie de votre aide.

  2. #2
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 222
    Points
    20 222
    Par défaut
    Ta requête soustrait 23h à la date actuelle et supprime tout ce qui est plus grand.
    Donc en gros tu supprime tout sauf ce qui est plus ancien que 23h.

    Inverse le signe de la comparaison et ca devrait se passer mieux
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 203
    Points : 82
    Points
    82
    Par défaut Supprimer une entrée toutes les 24h
    J'ai essayé comme tu m'as dis mais ça fait pareil ma table se vide quand même.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $nettoyage = $pdo->exec('DELETE FROM connexion WHERE date_essais < DATE_SUB(NOW(), INTERVAL 2 HOUR)');
    et là 1h plus tard à la prochaine exécution de la tâche, cela supprime mes lignes alors que cela devrait attendre 2h.

  4. #4
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 222
    Points
    20 222
    Par défaut
    Faits un select à la place du delete et affiche le résultat ici qu'on comprenne un peu mieux.
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 203
    Points : 82
    Points
    82
    Par défaut Supprimer une entrée toutes les 24h
    Au temps pour moi, la deuxième solution marche bien.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Afficher une page tout les 24h
    Par lola13 dans le forum Langage
    Réponses: 4
    Dernier message: 13/12/2008, 15h03
  2. Supprimer une entrée d'une table sans casser les relations
    Par gvdmoort dans le forum Ruby on Rails
    Réponses: 4
    Dernier message: 05/10/2007, 13h02
  3. Réponses: 8
    Dernier message: 09/01/2006, 16h58
  4. Réponses: 9
    Dernier message: 14/12/2005, 21h05
  5. effacer une table toutes les nuits
    Par nako dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 12/06/2005, 21h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo