Page 1 sur 1

Jour reserve sur un calendrier

Posté : 07 avr. 2010, 16:47
par Shivas
Bonjour,

J'ai mis en place un calendrier php et je souhaiterai faire apparaitre d'une couleur distincte les jours réservés. Le soucis vient de ma boucle pour comparer les jours pour le mois en cours et ceux présent dans ma bdd. Par exemple dans ma bdd j'ai la date 2010-03-23, 2010-04-01, 2010-04-16
while ($boucle = mysql_fetch_assoc($verif_day))
{
	$array_recherche = $boucle['Date'];
						
							
	    IF($array_recherche == $recup_date) {
			$couleur_disponibilite = $couleur_reserve;
						}
}
 

Ce qui me grise la date du 1 avril mais les autres champs ne sont pas récupérer. Quelqu'un peut-il m'éclairer sur la situation je pense toute bete mais la je suis perdu. Merci

Re: Jour reserve sur un calendrier

Posté : 07 avr. 2010, 16:50
par stealth35
lu,
a quoi ressemble $recup_date ?

Re: Jour reserve sur un calendrier

Posté : 07 avr. 2010, 17:00
par Invité
Il m'affiche tous les jours du mois en cours lorsque j'effectue un echo avant mon while

Re: Jour reserve sur un calendrier

Posté : 07 avr. 2010, 17:02
par stealth35
sous quel forme ?

Re: Jour reserve sur un calendrier

Posté : 07 avr. 2010, 21:34
par Invité
AAAA-mm-dd ex 2010-04-07

Re: Jour reserve sur un calendrier

Posté : 08 avr. 2010, 10:24
par stealth35
donc $recup_date c'est qu'une seule date ?

Re: Jour reserve sur un calendrier

Posté : 08 avr. 2010, 12:38
par Invité
Concrétement lorsque je fais echo $recup_date j'ai :
2010-04-01
2010-04-02
2010-04-03
.............
.............
.............
2010-04-30

Cela m'affiche toutes les dates du mois en cours

Re: Jour reserve sur un calendrier

Posté : 08 avr. 2010, 13:40
par stealth35
faut faire un explode sur les lignes alors et faire une recherche in_array

Re: Jour reserve sur un calendrier

Posté : 08 avr. 2010, 15:13
par Invité
J'ai effectué le code suivant
$recup_date = $annee_en_cours.'-'.$recup_mois.'-'.$recup_jour;
$explod_date = explode("-", $recup_date);

while ($boucle = mysql_fetch_assoc($verif_day))
{
     $array_recherche = $boucle['Date'];
						
	if (in_array($array_recherche, $explod_date, true)) {
						
		$couleur_disponibilite = $couleur_reserve;
						}
						
}
Ca ne doit pas être ça que tu m'explique. A quoi ça sert l'explode sachant que je découpe ma date avec $annee_en_cours, $recup_mois et $recup_jour
merci pour ton aide

Re: Jour reserve sur un calendrier

Posté : 08 avr. 2010, 15:24
par stealth35
tu te rends bien compte que lorsque tu fais ta boucle $recup_date n'a qu'une seule valeur

Re: Jour reserve sur un calendrier

Posté : 09 avr. 2010, 08:43
par Invité
Oui je comprend bien que recup_date me renvoie que le permier jour du mois en cours, je ne voit pas bien comment utiliser explode par rapport à cette variable. Est-ce que le code que j'ai écrit avant est correcte, je ne pense pas.

Re: Jour reserve sur un calendrier

Posté : 09 avr. 2010, 10:07
par stealth35
hello, tu ne peux pas puisque c'est qu'une seul valeur, ou son toutes les autres ?

Re: Jour reserve sur un calendrier

Posté : 09 avr. 2010, 11:43
par Invité
j'ai du mal à saisir ce que tu me conseils. Je t'explique mon resonnement.

J'ai sur cette page un calendrier qui s'affiche et je souhaite que lorsqu'elle s'affiche les dates enregistré dans ma bdd soit grisée.
1)Je récupére les dates du mois en cours grace à la variable $recup_date = $annee_en_cours.'-'.$recup_mois.'-'.$recup_jour;
Quand j'effectue un echo j'ai donc toutes les dates du mois en cours qui s'affiche
2) Je crée ma requête pour récupérer les dates enregistrées dans ma bdd affecté à la variable $verif_day
3) J'éffectue une boucle pour faire le tour des enregistrements de ma bdd de cette maniére
while ($boucle = mysql_fetch_assoc($verif_day))
{
$array_recherche = $boucle['Date'];
ECHO $array_recherche;
}
Lorsque j'effectue un echo j'ai bien les dates correspondantes à ma bdd, par ex : 2010-04-14 2010-04-15

Donc à ce niveau comment dois-je procéder pour savoir si $array_recherche = $recup_date

Re: Jour reserve sur un calendrier

Posté : 09 avr. 2010, 14:28
par stealth35
pas terrible comme methode, dans ton cas tu peu utiliser strpos