[RESOLU] Chercher et afficher les dates avant la date du jour en SQL / php

Mammouth du PHP | 2703 Messages

13 nov. 2022, 22:12

je demandais :
quelle est la syntaxe d'une requête contenant une date dans le 1er lien que j'ai donné ?
en voilà une quoi fonctionne :
SELECT DATEDIFF('2014-01-09', '2014-01-01')

dans un précédent message :
MySQL a retourné un résultat vide (c'est à dire aucune ligne). (traitement en 0.0016 seconde(s).)
SELECT * FROM `act_user3` WHERE DATE(`dtexpiration`) < 2023-01-31

quelle est la différence fondamentale au niveau des dates codées en dur entre ces 2 requêtes ?

Eléphant du PHP | 68 Messages

13 nov. 2022, 22:20

Hum, je dirai qu'il n'y en a qu'une alors que dans la colonne `dtexpiration` il y'en a plusieurs, non ?

Eléphant du PHP | 68 Messages

13 nov. 2022, 22:21

ah, la date la plus récente est en 1er

Mammouth du PHP | 2703 Messages

13 nov. 2022, 22:23

Hum, je dirai qu'il n'y en a qu'une alors que dans la colonne `dtexpiration` il y'en a plusieurs, non ?
non
je ne demande la différence entre les requêtes, elles sont bien sur différentes. je demande la différence au niveau des dates codées en dur.

Eléphant du PHP | 68 Messages

13 nov. 2022, 22:27

Ok oui.... je viens de comprendre ... les ' '

SELECT * FROM `act_user3` WHERE DATE(`dtexpiration`) < '2023-01-31'

Et là ça fonctionne, enfin sur phpmyadmin mais sur mon site impossible de le faire fonctionner

Eléphant du PHP | 68 Messages

14 nov. 2022, 00:38

Pourtant j'ai extrait la requête au format php directement depuis phpmyadmin mais non ça ne fonctionne pas

Mammouth du PHP | 2703 Messages

14 nov. 2022, 00:44

quel code php ?
que donne un echo de la requete ?

après, il serait bien de trouver comment, dans phpmyadmin, obtenir la même chose avec DATEDIFF

Eléphant du PHP | 68 Messages

14 nov. 2022, 00:48

Le echo donne 290 résultats alors qu'il n'y en a que 24 dans phpmyadmin.
Je ne comprends pas trop là

Eléphant du PHP | 68 Messages

14 nov. 2022, 00:54

Bon je pense avoir trouvé !
ça me retourne 210 résultat maintenant et je pense que cela correspond.
En revanche je me demandais si il était possible de mettre 3 conditions de WHERE en une seule requête ?
$dateactuelle = date('Y-m-d'); 
$sqldate = "SELECT * FROM `act_user3` WHERE statut='N' AND DATE(`dtexpiration`) < '$dateactuelle'";
Je voulais en ajouter une 3ème mais je ne sais pas si je peux ajouter un second AND.

Eléphant du PHP | 68 Messages

14 nov. 2022, 07:52

C'est bon ça fonctionne, merci or 1