|
blog actif depuis 1328 jours.
retours d'expériences, codes sources, réflexions, humeurs... d'un webmaster |
||||||||||||||||||||||||||||||||||||||||||||||||||
|
Lun. 20 Oct. Digne héritière de la classe dates proposée il y a quelques jours, la classe calendrier vous permet l'affichage d'un calendrier en PHP, comme celui que vous pouvez découvrir sur ce site. ![]() Le calendrier généré est entièrement paramétrable : - activation ou non des liens sur les mois, les semaines… - affichage ou non du mois, de la navigation entre mois, des semaines… - format des liens - dates limites - ajout d'évènements sur les dates Le rendu est géré via une feuille de styles. Paramétrage du calendrier $obj_cal = new classe_calendrier(); ![]() $obj_cal->afficheNavigMois(true); // navigation par mois ![]() $obj_cal->activeLiensSemaines(); // active les liens sur la semaine ![]() $obj_cal->activeJoursPasses(); // active les liens sur les jours antérieurs à la date du jour A l'inverse, $obj_cal->activeJoursFuturs() activera les liens sur les jours postérieurs à la date du jour ![]() Dates Limites $obj_cal->setDateMin("05/10/2008"); // date limite inférieureNB : L'utilisation des dates limites annulera par défaut les fonctions activeJoursPasses et activeJoursFuturs Ajout d'événements Vous pouvez afficher des événements au survol d'une date. (cette fonctionnalité utilise du javascript) $obj_cal->activeJoursEvenements(); ![]() Format d'écriture des liens Par défaut, les liens pointent sur la page contenant le calendrier avec comme arguments supplémentaires &annee=YYYY&mois=MM&jour=JJ&semaine=SS. Vous pouvez modifier les liens de destination avec les fonctions suivantes : $obj_cal->setLienMois("http://www.toto.fr/mois/") ;Ou encore donner un format d'écriture (format accepté par la fonction sprintf()): $obj_cal->setFormatLienJours("http://www.toto.fr/%04s/%02s/%02s/"); Téléchargez le calendrier Zip contenant les classes dates et calendrier, la feuille de style CSS et le code source de l'exemple.
Commentairespas possible pour le moment, mais pour la prochaine version, pourquoi pas ... profitez-en d'ailleurs pour me soumettre des idées de fonctionnalités que je pourrais ajouter 21/10/2008 J'ai corrigé un petit bug, notamment sur la classe dates. Pensez à mettre à jour le fichier source ! 22/10/2008
bonsoir, 29/10/2008 salut fellah 29/10/2008
salut romuald 05/11/2008 Bonjour, 05/11/2008
RE 05/11/2008
Bonjour, 19/11/2008 Bonjour Krichoune, 19/11/2008
Bonsoir, 07/03/2009 bonjour Robert, 08/03/2009
Bonjour Romualb, 12/03/2009 Bonjour Foug, mets à jour la classe calendrier dans l'espace téléchargement, j'ai fait de nombreuses modifications et quelques corrections. 18/03/2009 Je l'ai pas précisé, mais la classe a été corrigée pour ne plus afficher de notices ! 20/03/2009
petite erreur dans ta classe classe_calendrier: 27/03/2009
Bonjour, 28/03/2009 Bonjour tophus. Il n'est pas prévu de passer des variables sur la navigation des mois. 28/03/2009
Bonjour, 09/07/2009 Bonjour Taojah, il est possible de mettre du contenu provenant d'une base de données dans les évènements. C'est d'ailleurs le cas pour ce blog. La récupération des données de la base se fait en amont, puis les données sont envoyées au calendrier par la méthode ajouteEvenement. 09/07/2009
Bonjour romualb. 25/08/2009 bonjour Kemish 25/08/2009
C'est OK, j'avaus fait une grosse boulette dans le script. 25/08/2009
Bravo pour ces classes c'est du beau travail, ça donne envie de se mettre à la POO. 23/10/2009 Bonjour Jack83 24/10/2009
salut romualb, 28/10/2009 c'est normal, dans l'exemple proposé la navigation (mois précédent et suivant) se fait en Ajax, les autres rechargent la page. 28/10/2009
super merci ça fonctionne bien 29/10/2009
Bonjour, 10/11/2009 bonjour slo 10/11/2009
Bonjour, et merci pour ce script très simple d'utilisation. 11/11/2009 Bonjour mariolus 11/11/2009
Ma page où est inséré le calendrier : 12/11/2009 Bonjour mariolus 12/11/2009
Ca marche, merci beaucoup ! 12/11/2009 Superbe calendrier ! Très simple à paramêtrer, vraiment ce que je cherchais pour mon site. Bravo ! 25/11/2009
Bonjour romuald, le script marchait très bien jusqu'à ce que je déplace mon site de dossier. Les dossiers relatifs n'ont pas changé, aussi je ne comprends pas pourquoi j'obtiens ce message d'erreur à la place du calendrier : 03/12/2009 Bonjour mariolus, cette erreur apparait quand le le serveur n'est pas compatible PHP5. 03/12/2009
bonjour, 20/12/2009 bonjour, mushu06 20/12/2009
Bonjour, 10/01/2010 Bonjour Legall 10/01/2010
Bonjour. 11/01/2010 bonjour TipX, je ferais prochainement une page dédiée au calendrier avec différents exemples, dont l'utilisation d'une base de données. 13/01/2010
Bonsoir 27/02/2010
howdy 06/04/2010 Salut Paul 06/04/2010
howdy 06/04/2010
Bonjour, 19/04/2010
Bonjour Romualb, 21/04/2010 @matalange : j'ai modifié la classe pour afficher plusieurs calendriers. je finis de tester et je mets ça en ligne 21/04/2010
bonjour, 22/04/2010 @mano : en navigation normale, tu mets en session la variable $_GET['mois'] ($_SESSION['mois']=$_GET['mois']), si tu utilises ajax, tu mets en session la variable $_POST['mois'] 22/04/2010
Bonjour Romualb, 12/05/2010 @sayo : salut, avec ton code, ce sera plus simple... tu peux me l'envoyer sur l'adresse contact 13/05/2010
Bonjour romualb 21/07/2010 @boucmacmilian : 21/07/2010
Salut, tout d'abord merci pour ce script c'est exactement ce que je recherchais depuis cette après-midi. 31/07/2010
Bonjour 01/08/2010 @Ludovic: la cellule du jour a l'attribut class="today". Tu peux tester s'il y a un lien dans cette cellule (avec jQuery par exemple) et changer le style. 01/08/2010 @mika : cette classe n'affiche qu'un calendrier. Les évènements sont associés à des dates. Il vous faut donc gérer la partie mysql (récupération des évènements d'une base de données), puis envoyer les résultats à la classe calendrier via la méthode ajouteEvenement($date,$texte) 01/08/2010
Bonjour et merci pour cette superbe class!! 30/09/2010 @Loremipsum31 : j'ai ajouté une méthode permettant de modifier le lien pour une date : 01/10/2010
Salut romualb, 24/10/2010 @ka3sem: bonjour et merci pour ces précisions. -Les attributs sont également appelés membres (voir la doc php : Les variables au sein d'une classe sont appelées "propriétés". On peut également les retrouver sous la dénomination "attributs", "membres" ou "champs"...) 25/10/2010 bonjour 17/01/2011 @adoob : il faut utiliser la méthode $obj_cal->setLienJour($a_date,$a_url); comme indiqué dans un commentaire précédent. Vérifie aussi que tu as bien la dernière classe. 18/01/2011
bonjour Romualb, 04/04/2011 @mimi : il faut garder la distinction entre la base de données et le calendrier. Tu récupères ce que tu dois afficher (select), puis tu ajoutes ces données au calendrier (ajouteEvenement). Ceci permet d'avoir quelque chose de plus souple si tu veux un jour ne plus utiliser le calendrier pour afficher tes données ou si tu dois modifier tes requetes SQL. 04/04/2011
Bonjour, j'ai télécharger votre calendrier qui est très bien, par contre j'ai rencontré un petit problème. 27/04/2011
Bonjour, 02/05/2011 Bonjour, j'ai intégré votre calendrier sur mon futur site en cours de codage. Mon site est en 4 langues et en parcourant votre code j'ai pu remarqué que le calendrier gérait déjà 2 langues. 03/05/2011
Je me doutais de la réponse mais j'espérais secrètement avoir fait une impasse visuelle sur la méthode miraculeuse :D 04/05/2011 @izrafel: vous pouvez utiliser la méthode setLangue(), ex : 04/05/2011
Le code est celui du dossier zip, je n'ai rien rajouté, ni enlevé. 05/05/2011 @Pazair : téléchargez les dernières classes calendrier et date. J'ai retesté sans pb. 05/05/2011 Bonjour, tout d'abords merci et bravo pour cette classe, c'est parfaitement ce que je cherchais. 30/05/2011
Salut Romualdb, et sincères félicitations pour ce script. Je l'ai largement adapté pour mon futur site et - cerise sur le gateau - il fonctionne impec sous IE 5.5+ et toutes versions de moins de 10 ans de Apple/Safari, Chrome, Opéra, Firefox... Bravo, vraiment, c'est du top-boulot ça ;-) 30/05/2011 @dangan: il n'est pas possible pour le moment de combler les cases vides avec les jours des autres mois, mais je mets ça sur la liste des évolutions 30/05/2011
Bonjour, 11/08/2011
@remi : voici quelques indices : 15/08/2011
Bonjour, 15/08/2011
as tu un message d'erreur ? 15/08/2011
Je n'ai pas de message d'erreur il reste juste sur la page du mois d'aout. 15/08/2011
par mail sur contact@romualb.com 15/08/2011 bonjour Romualb 19/08/2011
Bonjour Romuald, 25/08/2011
Romuald, 25/08/2011 @chris76 : merci de m'envoyer ton code par mail sur l'adresse de contact, parce que là, c'est pas évident à comprendre... 25/08/2011
Bonjour et merci beaucoup d'avoir mis ce superbe calendrier à la disposition de tout le monde. Merci également pour vos réponses attentives aux questions que les utilisateurs vous ont posées. 31/08/2011
@Léo : si j'ai bien compris, tu cherche juste à modifier la couleur de la case du jour selon l'évènement associé. Ça devrait se faire simplement avec jQuery par exemple : pour tous les jours ayant un événement $('.event'), tu ajoute la classe correspondante à l'événement sur la case, avec addClass(); 31/08/2011
Re-bonjour, 31/08/2011
Malheureusement je ne connais pas jQuery. Je suis très novice dans le domaine. 31/08/2011
Salut, 09/10/2011
@Amouna: il doit bien l'être en transitionnel alors... 09/10/2011
Merci beaucoup pour cette classe super pratique et simple d'utilisation ! 30/10/2011
Ajouter un commentaire |
romualb.com est sur Facebook
![]()
![]()
![]()
|
|||||||||||||||||||||||||||||||||||||||||||||||||
Bonjour,
comment changer le premier jour de la semaine?
21/10/2008