Bonjour à tout le monde,
Je suis nouveau dans la programmation php, et j'aurais besoin d'aide :
j'ai créé un calendrier (à la méthode brute de brute, vous le verrez, mais je l'améliorerai plus tard...) où j'affiche les jours de différentes couleurs :
- blanc : jour hors de mes limites de dates (stockées dans ma base de données)
- bleu : jour dans les limites de dates
Jusque là, pas de problème, tout fonctionne (voir image).
Je veux maintenant ajouter celà :
- rouge : jour dans mes premières limites de dates, mais entre 2 autres limites (stockées dans ma base de données).
Je m'explique : c'est en fait un calendrier de disponibilités de location d'un appartement --> blanc : hors saison, bleu : en saison, et libre, rouge : en saison, mais déjà réservé.
J'ai procédé de la manière suivante :
- tableau de 7 colonnes (une par jour), 6 lignes.
- je place le premier jour du mois dans la première ligne, et dans la bonne colonne. Je place des cases grises avant le 1er du mois.
- j'inscris les autres dates à la suite jusqu'à ce que ma variable colonne dépasse 7 ; dans ce cas, je reviens à la ligne et je réinitialise ma variable colonne == 1.
- je reproduis celà sur 5 lignes et je termine avec un fond gris pour les cases vides.
Pour reproduire le schéma sur 5 lignes, j'utilise une boucle "for" (pour faire 5 lignes), dans laquelle j'inclus une boucle "while" (jusqu'à ce que ma colonne 7 soit atteinte).
Nous arrivons à mon problème : dans cette boucle "while", j'ai un "if/elseif/else".
- IF : si je suis hors saison --> case blanche (FONCTIONNE) compare la date à afficher avec les dates de la saison.
- ELSEIF : PROBLEME !!! je dois comparer à chaque tour du "while" si la date que je suis en train d'inscrire est dans une période réservée ou non (périodes stockées dans une base de données). Je crois que je dois utiliser :
MAIS ALORS COMMENT REDIGER CELA POUR QUE CA FONCTIONNE ???? Le problème n'est pas dans la rédaction de mes conditions, mais dans l'intégration de mon "sql_fetch_array" dans mon "elseif"...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 while($reservations = mysql_fetch_array($result)) { if (ma date actuelle est dans une période réservée) { je met en rouge } }- ELSE : case bleue --> date libre
Pouvez-vous m'aider ?
Merci d'avoir pris le temps de me lire...
je suis sur ce problème depuis des mois, et je fais du sur place !!!
Partager