Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1821 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [resolu] requete avec date

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[resolu] requete avec date

n°1109038
dandy
Posté le 05-06-2005 à 22:12:17  profilanswer
 

Bonjour,
 
je voudrais récupérer des news et articles par jour, mois ou année.
Les dates dans la base de données (mysql) sont au format 0000-00-00.
Je ne sais pas trop comment me déboruiller : récupérer tous les enregistrements et vérifier le jour,le mois, l'année avec des expressiosn régulières ou est-ce que je peux le faire en une seule requête...
 
Merci.


Message édité par dandy le 07-06-2005 à 21:16:23
mood
Publicité
Posté le 05-06-2005 à 22:12:17  profilanswer
 

n°1109043
esox_ch
Posté le 05-06-2005 à 22:19:59  profilanswer
 

tu fais un ORDER BY 'madate'


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1109067
naceroth
Posté le 05-06-2005 à 23:23:46  profilanswer
 

dandy a écrit :

Bonjour,
 
je voudrais récupérer des news et articles par jour, mois ou année.
Les dates dans la base de données (mysql) sont au format 0000-00-00.
Je ne sais pas trop comment me déboruiller : récupérer tous les enregistrements et vérifier le jour,le mois, l'année avec des expressiosn régulières ou est-ce que je peux le faire en une seule requête...


 
Des expressions régulières ? tu sais que mysql intègre des fonctions dédiés aux dates documentées par là ?

n°1110602
dandy
Posté le 07-06-2005 à 10:03:09  profilanswer
 

J'ai cherché dans la doc et après nombres d'essais, je n'arrive pas à faire ce que je veux.(ORDER BY 'madate' ne convient pas à moins que je ne l'ai mal utilisé)
 
Je réexplique mon problème :  
 
j'ai une fonction qui récupère les news, on lui donne en premier paramètre une date, par exemple 2004-05-15 et en second paramètre ce que j'appel le type qui est annee, mois ou jour.
Les news recupérées devront être de 2004 si le type et annee, du mois de mai si le type est mois et de la date précisément données si le type est jour.
 
:??: Y a-t-il moyen de passer pas une simple requête qui fait le tri directement au lieu d'une boucle et expressions régulières ? :??:  
 
Merci à esox et naceroth.

n°1111398
naceroth
Posté le 07-06-2005 à 16:27:47  profilanswer
 

Ben, c'est 3 requêtes différentes suivant les cas, te casse pas la tête pour rien non plus, tu récupères la partie de la date dont tu as besoin dans ton premier paramètre et tu compares avec celle de la db en utilisant year et month :)

n°1111423
Worldofdad​a
Posté le 07-06-2005 à 16:39:23  profilanswer
 

Pourquoi ne pas utiliser LIKE ?
 
Si le 2eme parametre est l'année :
WHERE MaDate LIKE "$annee-%"
 
Si mois :
WHERE MaDate LIKE "%-$mois-%"
 
Si jour :
WHERE MaDate LIKE "%-$jour"
 
Non ?

n°1111500
ritzle
Posté le 07-06-2005 à 17:09:36  profilanswer
 

pourquoi ne pas séparer le jour, le mois et l'année dans 3 colonnes différentes ?

n°1111567
Worldofdad​a
Posté le 07-06-2005 à 17:38:33  profilanswer
 

Bah autant profiter des possibilités des bases de données ...

n°1111569
benamoubea​ch
tivuplai
Posté le 07-06-2005 à 17:39:36  profilanswer
 

Regarde la fonction mysql DATE_FORMAT(date,format)
 
un truc du genre
 

Code :
  1. <?php
  2. $la_date = '2005-12-30'; // 30 décembre 2005
  3. $date = explode('-',$la_date);
  4. switch ($type)
  5. {
  6. case 'annee': $format = '%Y';d=$date[0];break;
  7. case 'mois': $format = '%m';$d=$date[1];break;
  8. case 'jour': $format = '%d';$d=$date[2];break;
  9. }
  10. $sql = 'SELECT mesnews FROM matable WHERE DATE_FORMAT(date,\''.$format.'\') = \''.$d.'\'';
  11. ?>


truc ds le genre


Message édité par benamoubeach le 07-06-2005 à 17:41:33
n°1111871
dandy
Posté le 07-06-2005 à 21:15:10  profilanswer
 

Ok j'ai essayé la méthode de benamoubeach et merci à toi ça marche nickel !!! [:acherpy]
 
Merci à tous pour vos suggestions !

mood
Publicité
Posté le 07-06-2005 à 21:15:10  profilanswer
 

n°1112264
benamoubea​ch
tivuplai
Posté le 08-06-2005 à 10:31:37  profilanswer
 

g oublié un $ devant 'd' dans le case annee


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [resolu] requete avec date

 

Sujets relatifs
[SQL] transformé une sous requete en requete avec LEFT join[Résolu] tableaux et sessions
Probleme avec un Applet [Résolu][Access 2003] Spécification d'importation [RESOLU]
classe + lien vers une DB prob incompréhenssible (resolu)[RÉSOLU] Php + fichier txt
[RESOLU] Requete SQL particulière[Résolu] gestion panier...
[resolu] probleme de requete avec DAY(date) et MONTH(date)[SQL] Requête et date (Problème résolu merci...)
Plus de sujets relatifs à : [resolu] requete avec date


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR