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

  FORUM HardWare.fr
  Programmation

  [MySQL] selectionner les champs avec une date inférieure à 1 semaine..

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[MySQL] selectionner les champs avec une date inférieure à 1 semaine..

n°81930
haazheel
Posté le 16-12-2001 à 15:38:14  profilanswer
 

Salut,
 
je voudrais savoir comment aller chercher les entrées d'une table (qui contient un champ date au format 'YYYY-MM-DD';), et uniquement les champs dont la date est inférieure à 1 semaine.
 
Ex: Là, on est le 2001-12-16, je voudrais les champs compris entre le 2001-12-09 et aujourd'hui...
 
J'ai cherché dans la doc du côté de curdate(), week()... et j'ai pas trouvé comment faire.
 
Help!!!
 
Merci d'avance

mood
Publicité
Posté le 16-12-2001 à 15:38:14  profilanswer
 

n°81931
Mara's dad
Yes I can !
Posté le 16-12-2001 à 15:44:08  profilanswer
 

Utilise une fonction MySql dur genre DATE_SUB(...)
 
La doc est là : http://www.mysql.com/doc/D/a/Date_ [...] tions.html


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°81932
Mara's dad
Yes I can !
Posté le 16-12-2001 à 15:47:02  profilanswer
 

Par exemple :  
 
SELECT * FROM ma_table WHERE date_a_tester >=  DATE_SUB(now(),INTERVAL 7 DAY)


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°81934
haazheel
Posté le 16-12-2001 à 15:49:58  profilanswer
 

Il me marque
Resource id #2 :??:  :pt1cable:  
 
Je continue de tester
 
J'ai mis ça comme requete:
 
$query = "SELECT * from resultats WHERE date >=  DATE_SUB(now(),INTERVAL 7 DAY)";

 

[edtdd]--Message édité par haazheel--[/edtdd]

n°81935
Mara's dad
Yes I can !
Posté le 16-12-2001 à 15:51:49  profilanswer
 

Fait voir le code !


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°81936
Mara's dad
Yes I can !
Posté le 16-12-2001 à 15:55:51  profilanswer
 

Le pb est pas dans la requête (si ton champ 'date' est bien de type datetime)
C'est ailleurs que çà va pas, genre dans la consultation des résultats !


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°81937
haazheel
Posté le 16-12-2001 à 15:56:31  profilanswer
 

Pour le code php:
include("conf.php3" );
 
$query = "SELECT * from resultats WHERE date >=  DATE_SUB(now(),INTERVAL 7 DAY)";
$result = mysql_query("$query",$connexion);
 
echo $result;
 
La structure de la table:
CREATE TABLE resultats (
   id int(11) NOT NULL auto_increment,
   championnat varchar(10) NOT NULL,
   domicile varchar(255) NOT NULL,
   points_dom smallint(3) DEFAULT '0' NOT NULL,
   exterieur varchar(255) NOT NULL,
   points_ext smallint(3) DEFAULT '0' NOT NULL,
   date date DEFAULT '0000-00-00' NOT NULL,
   pseudo varchar(255) NOT NULL,
   PRIMARY KEY (id),
   UNIQUE id (id),
   KEY id_2 (id)
);

n°81940
ethernal
Chercheur de vérité...
Posté le 16-12-2001 à 16:07:37  profilanswer
 

j'y connais que dalle en date_sub, mais il me semble que pour afficher un résultat valide, il faudrait faire un $row= mysql_fetch_object($result) au minimum...
puis un echo $row->id, ...

n°81941
z0rglub
Posté le 16-12-2001 à 16:12:38  profilanswer
 

j'ai fait un truc du même genre sur ce site :
http://z0rglub.dns2go.com/film/film.php3
si le principe te plaît, je t'expliquerai comment j'ai fait


---------------
Ma galerie photo créée avec Piwigo et hébergée sur Piwigo.com
n°81943
Mara's dad
Yes I can !
Posté le 16-12-2001 à 16:20:24  profilanswer
 

YES !
 
$query = "SELECT * from resultats WHERE date >= DATE_SUB(now(),INTERVAL 7 DAY)";  
$result = mysql_query("$query",$connexion);  
echo $result;  
 
C'est loin d'être suffisant !
 
$result n'est qu'un identifiant de résultat !
Ensuite, faut l'interroger avec une des fonction fetch...
 
Voir la doc PHP sur les fonction MySql.


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
mood
Publicité
Posté le 16-12-2001 à 16:20:24  profilanswer
 

n°81946
ethernal
Chercheur de vérité...
Posté le 16-12-2001 à 16:30:17  profilanswer
 

z0rglub a écrit a écrit :

j'ai fait un truc du même genre sur ce site :
http://z0rglub.dns2go.com/film/film.php3
si le principe te plaît, je t'expliquerai comment j'ai fait  




 
beau répertoire ;)  :ouch:

n°81947
z0rglub
Posté le 16-12-2001 à 16:35:03  profilanswer
 

j'ai merdé sur la table, j'ai deleté le champs catégorie, alors c tout laid là


---------------
Ma galerie photo créée avec Piwigo et hébergée sur Piwigo.com
n°81948
haazheel
Posté le 16-12-2001 à 16:36:05  profilanswer
 

Mara's dad a écrit a écrit :

YES !
 
$query = "SELECT * from resultats WHERE date >= DATE_SUB(now(),INTERVAL 7 DAY)";  
$result = mysql_query("$query",$connexion);  
echo $result;  
 
C'est loin d'être suffisant !
 
$result n'est qu'un identifiant de résultat !
Ensuite, faut l'interroger avec une des fonction fetch...
 
Voir la doc PHP sur les fonction MySql.  




 
Pas besoin!! :D  
 
Ca marche avec ça:
 
$query = "SELECT pseudo FROM resultats where date >=  DATE_SUB(now(),INTERVAL 7 DAY)";
$result = mysql_query("$query",$connexion);
$lignes = mysql_num_rows($result);
$i = 0;
while ($i<$lignes)
{
$date = mysql_result($result,$i,"date" );
echo $date;
$i++;
}
 
Par exemple... :)  
 
Merci pour tout!! :jap:

n°81950
Mara's dad
Yes I can !
Posté le 16-12-2001 à 17:08:53  profilanswer
 

C'est exactement ce que je voulais dire ;-)
 
Ou plus simplement :
 
$query = "SELECT pseudo FROM resultats where date >=  DATE_SUB(now(),INTERVAL 7 DAY)";  
$result = mysql_query( $query, $connexion );  
while( $lignes = mysql_fetch_array( $result ) )
{
  echo $lignes[date];  
  echo $lignes[championnat];  
  echo $lignes[domicile];  
  ...
}

 

[edtdd]--Message édité par Mara's dad--[/edtdd]


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°81972
haazheel
Posté le 16-12-2001 à 18:59:21  profilanswer
 

Mara's dad a écrit a écrit :

 
  echo $lignes[championnat];  




écrire ça:
echo $lignes[championnat];
 
revient à écrire ça?
$date = mysql_result($result,$i,"date" );
echo $date;

 
C'est vachement plus simple alors...
Quels sont les avantages d'une méthode par rapport à l'autre?

n°81995
Mara's dad
Yes I can !
Posté le 16-12-2001 à 20:30:39  profilanswer
 

Par exemple :
- Quand t'as 10 champs, c'est 1 seul appel MySql au lieu de 10.
- Dans une fonction, tu retourne un tableau avec toutes les valeurs d'un seul coup.
 
Si t'as besoin que de la date, c'est pas la peine de faire un "SELECT *".
 
Mais tu fais comme tu veux...
Je réagissais juste au "echo $result;"


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°82022
stef_dober​mann
Personne n'est parfait ...
Posté le 17-12-2001 à 09:48:14  profilanswer
 

:hello:  
Mara's dad  à écrit

Citation :


Ou plus simplement :
 
$query = "SELECT pseudo FROM resultats where date >=  DATE_SUB(now(),INTERVAL 7 DAY)";  
$result = mysql_query( $query, $connexion );  
while( $lignes = mysql_fetch_array( $result ) )
{
 echo $lignes[date];  
 echo $lignes[championnat];  
 echo $lignes[domicile];  
 ...
}  


tu fais comment pour faire afficher la date, le champoinnat, le domicile, et ...
en faisant un select peusdo from ...
 
 :eek2:  respect :eek2:


---------------
Tout à commencé par un rêve...
n°82028
Mara's dad
Yes I can !
Posté le 17-12-2001 à 10:04:40  profilanswer
 

Arghhhhh, le copier coller à encore frappé ! :jap:


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°82030
stef_dober​mann
Personne n'est parfait ...
Posté le 17-12-2001 à 10:14:09  profilanswer
 

:D  :D


---------------
Tout à commencé par un rêve...

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

  [MySQL] selectionner les champs avec une date inférieure à 1 semaine..

 

Sujets relatifs
[PHP MySQL] Réalistation d'un Agenda...[MySQL] sauvegarde auto de ses bases
[MySQL] Vérifier l'existence d'une table?[MySQL]
[PHP / MySQL] TIMESTAMP , piti blème, vous savez surement!!!!! aidez;)requ^te pour effacer toutes les tables de mysql
[Php/MySQL]ReportingMySQL, c'est vraiment comique...
Importation mysql dans multimaniaBD mysql pb avec BLOB
Plus de sujets relatifs à : [MySQL] selectionner les champs avec une date inférieure à 1 semaine..


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