Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Champ date

3 réponses
Avatar
Jacky.Morales
Bonsoir

Dans une base mysql j'ai des personnes qui s'inscrivent. Ce champs
inscription je le récupère dans ma base grace à 3 listes déroulantes ( jour,
mois, années) et ma date d'inscription est de la forme $inscription =
$annee-$mois-$jours

Par contre quand je fais un select et que je veux classer mes données par
date d'inscription je fais un order by inscription et là j'ai un classement
bizzarre c'est-à-dire qu'il ne tiens pas compte de la date d'inscription

si vous avez un tuyau merci

3 réponses

Avatar
jacky morales
J'ai la 323 de mysql et j'ai toujours le même probleme

Merci
Michaël Bascou a écrit dans le message :
begrhi$8np$
Le 09.07.2003 11:34, jacky morales a écrit :
> Voilà dans mon tableau je récupère bien ma valeur de date : par exemple
> 09.07.2003
>
> Par contre le order by classe d'abord par jour 01,02 ... puis par mois


et
> enfin par années par exemple
> 01.02.2003
> 01.03.2003
> 01.04.2003
>
> et ainsi de suite
> ma variable $inscription="$annee-$mois-$jour"; avec $annee sur 4


chiffres et
> dans ma requete je récupère par un date_format(...)inscription
>
> Merci

Dans un mail précédent tu disais que ton champs était de type "DATE". Si


on
simule : j'ai une table avec un seul champs de type date. Voici les
enregistrements de la table.

mysql> select * from test_date;
+------------+
| time |
+------------+
| 2003-01-15 |
| 2003-02-22 |
| 2003-01-10 |
| 2003-02-25 |
| 2003-03-01 |
| 2002-04-12 |
| 1999-06-12 |
| 1999-05-07 |
| 1986-11-01 |
| 2004-07-14 |
| 2004-01-02 |
| 2000-09-21 |
+------------+

Et si je classe les données comme tu sembles le faire, ça donne ceci :

mysql> select date_format(time,'%d.%m.%Y') from test_date order by time;
+------------------------------+
| date_format(time,'%d.%m.%Y') |
+------------------------------+
| 01.11.1986 |
| 07.05.1999 |
| 12.06.1999 |
| 21.09.2000 |
| 12.04.2002 |
| 10.01.2003 |
| 15.01.2003 |
| 22.02.2003 |
| 25.02.2003 |
| 01.03.2003 |
| 02.01.2004 |
| 14.07.2004 |
+------------------------------+

Chez moi, ça classe bien ;)

Tu as quelle version du serveur ?

Cdt,
Michaël

Avatar
Côme de Christen
"jacky morales" a écrit dans le message de news: beh0nu$71b$
J'ai la 323 de mysql et j'ai toujours le même probleme

Merci



Montre nous la définition de la table , la requête d'insertion
et la requête de sélection.
Avatar
Jacky.Morales
Bonsoir

Voilà comment je procède pour l'insertion des données

$inscription="$annee-$mois-$jour";

$requete2 = "INSERT INTO nmv_proposer
(iddemande,idsociete,demande_societe,trait_demande,
inscription)
VALUES ('$iddemande','$newidsocietes','$demande_societe',
'$trait_demande','$inscription');";
Les variables $annee, $mois, $jour sont récupérées à partir de 3
listesdéroulantes

Pour l'affichage je fais comme celà

$requete = "SELECT idsociete,iddemande,"
."
demande_societe,trait_demande,DATE_FORMAT(inscription,'%d.%m.%Y')inscription
"
." FROM nmv_proposer "
." ORDER BY inscription ";

Dans la table nmv_proposer le champ inscription est un champ date non null
et par default il est à 0000-00-00

Par contre quand ds phpmyadmin je fais la requete select * from
nmv_proposer order by inscription celà marche : c'est pourquoi après enquète
de ma part il doit y avoir un smoll par rapport à mes listes deroulante

merci


"Côme de Christen" a écrit dans le message de
news: 3f0c1624$0$26612$
"jacky morales" a écrit dans le message de


news: beh0nu$71b$
> J'ai la 323 de mysql et j'ai toujours le même probleme
>
> Merci

Montre nous la définition de la table , la requête d'insertion
et la requête de sélection.