Vérifier si une date est égal à un jour

Résolu
fabian86 Messages postés 31 Date d'inscription dimanche 6 mai 2007 Statut Membre Dernière intervention 5 mai 2012 - 26 mai 2008 à 01:59
didi2005 Messages postés 46 Date d'inscription dimanche 27 novembre 2005 Statut Membre Dernière intervention 1 juillet 2008 - 29 mai 2008 à 00:07
bonjour,

J'ai 2 tables, une première qui m'informe sur les jours de consultation et les heures.elle contient (int id, varchar jour, varchar heure_deb, varchar heure_fin, int id_fk_docteur) et une autre table qui me permet d'enregistrer les rendez vous d'un client pour un docteur(int id, datetime date, varchar heure,int id_fk_docteur,int id_fk_client).

J'aurai voulu savoir s'il y avait une requête pour vérifier si une date est égale à un jour. Sinon une solution qui pourrait convenir.

Si une âme charitable pouvait m'aider

9 réponses

didi2005 Messages postés 46 Date d'inscription dimanche 27 novembre 2005 Statut Membre Dernière intervention 1 juillet 2008 1
28 mai 2008 à 22:47
Salut,
Pour ne pas se bloquer on peut envisager une solution temporaire (si vous êtes sur que les espaces sont situés à la fin de la chaine.
Voici un exemple :

            string jour1 = "Mercredi                    "; //Variable venant de la base
            string jour2= dateTimePicker1.Value.ToLongDateString();
            if (j2.StartsWith((j1.Trim()).ToLower()))
            MessageBox.Show("it works");
si je trouve plus du temps je vais te trouvais une solution plus professionnel.
Goog luck

i have a dream
3
didi2005 Messages postés 46 Date d'inscription dimanche 27 novembre 2005 Statut Membre Dernière intervention 1 juillet 2008 1
29 mai 2008 à 00:07
De rien,
tu n'as qu'à choisir ma réponse comme "réponse accéptée" pour que les autres sache la solution de votre question.

Merci à toi

i have a dream
1
MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 57
26 mai 2008 à 09:56
0
didi2005 Messages postés 46 Date d'inscription dimanche 27 novembre 2005 Statut Membre Dernière intervention 1 juillet 2008 1
27 mai 2008 à 09:47
Bonjour,

Je ne sais pas est ce que j'ai bien compris votre pb mais voici qlq lignes qui peuvent vous aidez :

string sdate = "26/05/2008";
int jour = 26;
DateTime date = Convert.ToDateTime(sdate);
 if (date.Day == jour)
      MessageBox.Show("Egal");
 else
       MessageBox.Show("Différent");

c'est évident que c'est un exemple trés simple mais vous pouvez vous vous inspirez (par exemple vous affectez à la variable sdate la date que vous voulez et pour la variable jour le jour que vous voulez)

BN : Faites attention au format du date que vous utlisier DD-MM-YYYY ou MM-DD-YYYY.

J'éspère avoir pu t'aider bon courage.

Yesss
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fabian86 Messages postés 31 Date d'inscription dimanche 6 mai 2007 Statut Membre Dernière intervention 5 mai 2012
27 mai 2008 à 13:41
Merci déjà de votre aide

En fait mon problème est que je reçois un jour de type string en français qui vient de ma DB (ça correspond aux jours de consultation je n'ai donc aucune date)et j'aimerai le comparer avec le jour de la dateTime.Today. Mais la date courante n'a que la propriété dayOfWeek qui correspond aux jours en anglais.

 J'ai essayé cette solution mais ça ne fonctionne pas

les 2 string sont "lundi" et j'ai vérifié en pas à pas

if (string.Compare(monJour, tabJour[0]) == 0 && dateDebut.DayOfWeek == DayOfWeek.Monday)

Si vous avez une solution miracle elle est la bienvenue

merci de votre aide
0
fabian86 Messages postés 31 Date d'inscription dimanche 6 mai 2007 Statut Membre Dernière intervention 5 mai 2012
27 mai 2008 à 16:21
J'ai de plus amples détails à vous fournir

J'ai affiché le nombre retourné par la comparaison de mes 2 string et il me donne 1!
J'ai l'impression que la chaine récupérée de la DB est pas exemple "lundi    "  et tabJour[0] = "lundi"

Si c'est ça le problème comment je pourrais le règler?

merci
0
Liverion Messages postés 296 Date d'inscription mardi 22 avril 2008 Statut Membre Dernière intervention 18 août 2008
28 mai 2008 à 10:37
Au pire tu peux toujours bidouiller avec un Contains()  (verifier que la chaine recupérée de ta DB contient le jour)

On peut écrire francais sur un clavier allemand , c'est juste plus long !!!
0
fabian86 Messages postés 31 Date d'inscription dimanche 6 mai 2007 Statut Membre Dernière intervention 5 mai 2012
28 mai 2008 à 21:43
et si la chaine venue de la DB contient des espaces à la fin, elle sera considérée plus grande que la chaine sans espace à la fin.
Sinon comment fonctionne la méthode contains()

Merci
0
fabian86 Messages postés 31 Date d'inscription dimanche 6 mai 2007 Statut Membre Dernière intervention 5 mai 2012
29 mai 2008 à 00:01
Merci

ça fonctionne grâce à toi maintenant. J'ai appris une nouvelle petite méthode Trim() très utile dans ce cas

Merci
0
Rejoignez-nous