J'ai une table SQL nommée "Utilisateurs" qui contient un champ TIMESTAMP nommé "creation_date" qui enregistre la date sous forme AAAA-MM-JJ Heure:mm:s
Pour supprimer toutes les lignes enregistrées avant 10 jours, j'exécute cette requête depuis l'interface PHPmyAdmin
DELETE FROM Utilisateurs WHERE creation_date < date_sub(CURRENT_DATE,INTERVAL 10 day)
et tout va bien mais lorsque j'exécute la même requête en php
$sql = "DELETE FROM Utilisateurs WHERE creation_date < date_sub(CURRENT_DATE,INTERVAL 10 day)";
rien ne se passe !Ci-dessous le codes de mon fichier PHP :
<?php
$servername = "localhost";
$username = "name";
$password = "pwd";
$dbname = "base";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
/* set the PDO error mode to exception */
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
/*sql to delete a record*/
$sql = "DELETE FROM Utilisateurs WHERE creation_date < date_sub(CURRENT_DATE,INTERVAL 10 day)";
/*use exec() because no results are returned*/
$conn->exec($sql);
echo "Record deleted successfully";
}
catch(PDOException $e)
{
echo $sql . "
" . $e->getMessage();
}
$conn = null;
?>
C'est sûr qu'il y a quelque chose qui manque