Bonjour,
J'ai créé une table MySQL dont l'une des colonnes : 'PART_EPOCH' contient un temps au format epoch.
Au chargement de ma page php, je voudrai effacer toutes les lignes de la tables qui contiennent la valeur d'un temps epoch inférieur au moment présent.
Pour cela, j'ai essayé ce qui suit mais cela ne fonctionne pas.
Echo affiche bien la variable $now_datetime, mais la requete Mysqli renvoi le message d'erreur :
Error while clearing old events :---
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 // Acquisition du temps présent au format epoch. $now_datetime = new DateTime(); echo $now_datetime->getTimestamp(); // Requete MySQL pour effacer les lignes dont le temps EPOCH < timestamp présent $query = "DELETE FROM crud_mysqli WHERE PART_EPOCH < $now_datetime->getTimestamp() "; $remove_past_events = mysqli_query($conn, $query) or die ( "Error while clearing old events : " . mysqli_error( ) );
Lorsque la requete fonctionnera, je voudrai périodiquement scruter la table MySQL pour effacer les lignes 'echues' grâce à cette requete.
Etant donné que les evenements stocké dans la colonne "PART_EPOCH" sont des timestamps formaté pour etre des temps dont la précision est la minutes (pas de secondes)
Je pensai crée une sorte de balise META pour rafraichir la page toutes les 15s afin que la requete de nettoyage des temps epoch échus soit executée.
Est ce une bonne façon de procéder ou il vaut mieux procéder autrement, par exemple avec des TRIGGER MySQL ?
Je vous remercie de votre aide,
Partager