Bonjour, comme indiqué, je souhaite utiliser une fonction PHP dans une requête SQL :
J'ai une base de donnée PSQL qui contient une table ip avec notamment un champ "modif" de type text.
J'ai une fonction get_age($string) qui va prendre en paramètre une chaîne de caractères formatée comme "modif", la parser, récupérer la date d'ajout contenu dans cette chaîne et retourner TRUE si cette date est inférieure à un certain âge.
Ci-dessous la fonction get_age() :
Or à un moment dans mon code, j'effectue une requête pour mettre à jour ma base de données et j'aimerai utiliser cette fonction dans une requête.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 <?php function get_age($modif) { $days_limit = 10; $modif = strstr($modif, "Adresse IP ajoutée le "); if ($modif) { $str_date = substr($modif, 22, 11); $date = new DateTime($str_date); $now = new DateTime(); // echo "Date de création de l'IP : ".$date->format('d/m/Y')."<br />"; // echo "Date actuelle : ".$now->format('d/m/Y')."<br />"; $interval = $date->diff($now); $interval->format('%d'); if ($interval->m == 0 AND $interval->y == 0) if ($interval->d < $days_limit) return TRUE; } return FALSE; } ?>
En gros j'aimerai pouvoir faire
Code : Sélectionner tout - Visualiser dans une fenêtre à part $request = "UPDATE ip SET actif = '0'";
(modif est un champ de la table ip au même titre que actif)
Code : Sélectionner tout - Visualiser dans une fenêtre à part $request = "UPDATE ip SET actif = '0' WHERE get_age(modif)";
Existe-il une solution simple pour effectuer cette requête ?
Cordialement.
Partager