murof15
Messages postés1Date d'inscriptionsamedi 20 octobre 2012StatutMembreDernière intervention20 octobre 2012 20 oct. 2012 à 14:49
Bonjour,
Je viens de télécharger et installer le script, mais chez moi il ne fait qu'afficher un calendrier et impossible de sélectionner une date.
Si cela est possible (ce que j'éspère) qu'est-ce que j'ai raté.
Merci.
timoute
Messages postés1Date d'inscriptionvendredi 28 septembre 2007StatutMembreDernière intervention31 juillet 2009 31 juil. 2009 à 11:27
Bonjours à tous
Je suis débutant et donc j’apprends petit à petit
Mais j'ai une petite question:
Tu n'utilise pas une base de données?
Si tu en utilise pourrais-tu ajouter dans le zip le fichier .SQL
Ce serai génial et sa m'aiderai à comprendre
Merci beaucoup theplayer777
aevan
Messages postés1Date d'inscriptionmardi 27 novembre 2007StatutMembreDernière intervention22 mai 2009 22 mai 2009 à 17:18
On utilise la fonction cal_to_jd qui convertit un calendrier en nombre de jours Julien en prenant comme premier paramètre l'une des constantes suivantes : CAL_GREGORIAN, CAL_JULIAN, CAL_JEWISH ou CAL_FRENCH.
Dans le code ci-dessus on rajoute un '$' ce qui veut dire que c'est une variable qui est envoyée et non plus une constante. Le plus étrange c'est que ça passe niquel en exécutant le fichier "index.php" fourni dans le pack mais dès lors qu'on cherche à implémenter la fonction calendrier() ailleurs dans nos pages on se retrouve avec un joli "Notice: Undefined variable: CAL_FRENCH in /Users/xxxx/Sites/calendrier/calendrier.php on line xx", ce qui est logique finalement. Car j'ai beau chercher dans tous les fichiers du pack, je ne trouve aucun endroit ou $CAL_FRENCH a été définie. Et si, dans index.php vous la remplacez par $cequevousvoulez ça passe toujours aussi bien...
Cerise sur le gâteau, en enlevant le $ à CAL_FRENCH et en passant donc la constante (au lieu de la variable) en premier paramètre de la fonction cal_to_jd(), le calendrier ne calcule plus bien les jours du mois précédant celui affiché.
J'ai finalement résolu le problème en passant CAL_GREGORIAN à la fonction cal_to_jd(), sachant que de nos jours le calendrier Julien a été abandonné depuis belle lurette et qu'on est en grégorien. À priori ça fonctionne, mais j'apprécierai que l'auteur du script le vérifie par lui-même... Voilà, j'espère avoir été assez clair :).
Merci :D
theplayer777
Messages postés27Date d'inscriptionvendredi 18 novembre 2005StatutMembreDernière intervention 9 avril 20082 24 févr. 2009 à 00:17
@cheznounours: Merci pour votre commentaire, ça fait toujours plaisir ;)
@lam55: mettez un $ devant CALL_FRENCH et cela devrait régler le problème.
@bourricot17: Il y aurait certainement un moyen de faire cela mais il faudrait y passer un peu de temps... temps que je n'ai malheureusement pas vraiment ces temps (je suis aux études) mais envoyez-moi un mail avec quelques précisions et je verrai ce que je peux faire
lam55
Messages postés2Date d'inscriptionmercredi 28 janvier 2009StatutMembreDernière intervention24 février 2009 24 févr. 2009 à 00:17
wéé j'ai réussi à le faire integrer , merci beaucouuuuup
davi-domo
Messages postés17Date d'inscriptiondimanche 23 octobre 2005StatutMembreDernière intervention23 novembre 2014 23 févr. 2009 à 23:02
bonjour,
vraiment simple a utiliser
très bon descriptif
10/10
lam55
Messages postés2Date d'inscriptionmercredi 28 janvier 2009StatutMembreDernière intervention24 février 2009 18 févr. 2009 à 19:08
Bonjour,
Je suis vraiment novice en php, je trouve votre calendrier sympa et simple à mettre en œuvre, mais y aurait-il un complément de code qui permettrait de changer les couleurs de jours ou semaines particulières: indication de périodes réservées pour un hôtel ou gite par exemple?
Merci d'avance pour vos infos!
cs_tidave
Messages postés18Date d'inscriptiondimanche 31 octobre 2004StatutMembreDernière intervention16 juin 2009 8 juil. 2008 à 17:04
Salut;
Ok merci, j'avais fini par faire le mien.
JE voudrais ajouter un peu d'ajax pour animer tout ça,
Exemple quand on change de mois , ici la page se recharge, je bosse sur un truc pour eviter ça. La gestion de rendez-vous et d'évenements sera aussi intégré.
A bientôt
theplayer777
Messages postés27Date d'inscriptionvendredi 18 novembre 2005StatutMembreDernière intervention 9 avril 20082 8 juil. 2008 à 15:32
et bien, par exemple, tu remplace cette ligne dans calendrier.php:
et le tour est joué... si tu n'a pas compris ou que tu as un problème redis-moi ;)
cs_tidave
Messages postés18Date d'inscriptiondimanche 31 octobre 2004StatutMembreDernière intervention16 juin 2009 26 juin 2008 à 13:22
Bonjour,
OK, mais je fais ça comment , décaler l'ordre de la formule ?
Merci d'avance pour les reponses
theplayer777
Messages postés27Date d'inscriptionvendredi 18 novembre 2005StatutMembreDernière intervention 9 avril 20082 26 juin 2008 à 09:55
Normalement en décalant d'un jour la formule tu devrais pouvoir t'en sortir sans trop de problème, et en changeant l'ordre des jours en haut...
cs_tidave
Messages postés18Date d'inscriptiondimanche 31 octobre 2004StatutMembreDernière intervention16 juin 2009 26 juin 2008 à 01:46
SAlut à tous !
Comment faire pour commencer le calendrier à Dimanche , si c'est possible .
Le code à l'air ok ! et assez simple, à bidouiller facilement
A bientôt
LegGohan
Messages postés199Date d'inscriptionvendredi 21 septembre 2007StatutMembreDernière intervention 2 août 2017 27 mai 2008 à 15:58
Super code, je me suis plong? dedans et je l'ai un peu bidouiller ^^.
J'ai vu que si on avance les mois pour arriver ? l'annee suivante, on a quand m?me le jour colori?. Je m'explique, le 27 mai 2008, 27 mai 2009 ou bien 27 mai 2002 sont tous colori?.
Je pense donc qu'il faut modifier la condition en ajoutant l'ann'e:
if($jour date("d") && $m date("n") && $a == date("Y")){
LeFauve42
Messages postés239Date d'inscriptionvendredi 20 octobre 2006StatutMembreDernière intervention20 avril 2009 2 oct. 2007 à 10:30
> PS : les accolades { } ne sont pas obligatoire sur les conditions lorsque qu'une seule action est faite. :)
Bien sur mais si tu n'en veux pas personnelement au pauvre gars qui va maintenir ton code, c'est quand meme plus sympa de toujours les mettre :o)
Si tu veux vraiment rester sur une ligne, tu as ca:
PS : les accolades { } ne sont pas obligatoire sur les conditions lorsque qu'une seule action est faite. :)
cs_Marshall_Mathers
Messages postés56Date d'inscriptionmardi 4 mai 2004StatutMembreDernière intervention30 novembre 2007 27 sept. 2007 à 07:23
Vraiment beau code,
Enfin j'n'ai pas encore analysé le code, mais ca m'a l'air assez bien !
:)
t_jay
Messages postés2Date d'inscriptiondimanche 23 juillet 2006StatutMembreDernière intervention26 septembre 2007 26 sept. 2007 à 19:03
Oups!!! le boulet que je suis!!!
Parti une démarche purement technique, j'ai perdu de vue l'aspect pratique.
Il est clair que la grande majorité des utilisations dépasse rarement les 2 siècles (voire largement moins).
J'aurais du réfléchir avant de poster
Toutes mes excuses donc.
Pour le reste, le code est au poil. Modifiable à souhait et très efficace.
Bravo et merci.
LeFauve42
Messages postés239Date d'inscriptionvendredi 20 octobre 2006StatutMembreDernière intervention20 avril 2009 26 sept. 2007 à 14:24
Pour les annees bissextiles, T_JAY a raison, mais dans la pratique, la "regle du %4" fonctionne tres bien entre 1901 et 2099.
[Begin remarque off-topic]
Ca m'a toujours fait marrer de voir des gens se prendre la tete a implementer la fonction "complete" en C alors qu'ils utilisaient derriere des time_t permettant de representer des dates uniquement comprises entre 1970 et 2038 :o)
[End remarque off-topic]
Sinon ton code est tres clair et le resultat tres esthetique.
Bravo!
Eric
Evangun
Messages postés1980Date d'inscriptiondimanche 20 février 2005StatutMembreDernière intervention24 septembre 20124 26 sept. 2007 à 14:09
Hello,
plutôt que de faire des formules avec d'innombrables exceptions, tu devraiyt plutôt utiliser les fonctions dates toutes faites de php pour parvenir avec certitude au bon résultat.
theplayer777
Messages postés27Date d'inscriptionvendredi 18 novembre 2005StatutMembreDernière intervention 9 avril 20082 26 sept. 2007 à 08:54
Salut,
Merci pour cette précision je n'étais pas au courant de cette règle... Dès que j'y arriverai (en effet j'ai essayé hier de mettre à jour ma source mais impossible ça ne fonctionnait pas!) je rajouterai ça dans mon code.
Merci encore!
t_jay
Messages postés2Date d'inscriptiondimanche 23 juillet 2006StatutMembreDernière intervention26 septembre 2007 25 sept. 2007 à 11:41
Bonjour,
sympa ton calendrier, c'est exactement ce que je cherchais.
Toutefois, il me semble que tu as fais une erreur sur le calcul des années bissextiles.
Règles sur les années bissextiles:
- Les années divisibles par 4 sont bissextiles, pas les autres.
- Exception: les années divisibles par 100 ne sont pas bissextiles.
- Exception à l'exception: les années divisibles par 400 sont bissextiles.
En conséquence, il me semble qu'il faudrait modifier ton code de la façon suivante:
theplayer777
Messages postés27Date d'inscriptionvendredi 18 novembre 2005StatutMembreDernière intervention 9 avril 20082 24 sept. 2007 à 09:01
plus... rigoureusement tu dis? Je vois pas exactement ce que tu veux que je te dise mais disons que je cherchais un calendrier tout simple que je puisse modifier à volonté et comme je ne suis pas un pro du PHP j'ai trouvé que la plupart des codes que j'avais vu étaient assez complexes alors j'en ai fais un moi-même avec du code plus basic (pour autant qu'on connaisse un minimum le php bien entendu) et avec des styles CSS pour pouvoir personnaliser facilement les couleurs et tailles des éléments du calendrier (texte,tableau,...) Voilà ;)
V4mp
Messages postés21Date d'inscriptionsamedi 22 septembre 2007StatutMembreDernière intervention30 septembre 2007 22 sept. 2007 à 10:34
Euh, ça a l'air prometteur mais explique nous plus rigoureusement enfin j'aimerais bien :p !
rambc
Messages postés224Date d'inscriptionmercredi 21 avril 2004StatutMembreDernière intervention29 mars 2009 21 sept. 2007 à 12:06
Merci, me voilà moins...
Evangun
Messages postés1980Date d'inscriptiondimanche 20 février 2005StatutMembreDernière intervention24 septembre 20124 21 sept. 2007 à 11:57
Google -> Yahoo User Interface
A connaître d'urgence.
rambc
Messages postés224Date d'inscriptionmercredi 21 avril 2004StatutMembreDernière intervention29 mars 2009 21 sept. 2007 à 10:49
Evangun, un lien ?
Evangun
Messages postés1980Date d'inscriptiondimanche 20 février 2005StatutMembreDernière intervention24 septembre 20124 21 sept. 2007 à 10:14
D'accord, merci.
Bon, ce n'est pas pour diminuer ton mérite du tout, mais je dois dire à tous ceux qui cherchent un calendrier d'aller voir aussi les librairies Yahoo (YUI), il y a des scripts vraiment très bien foutus, calendriers cliquables et tout.
theplayer777
Messages postés27Date d'inscriptionvendredi 18 novembre 2005StatutMembreDernière intervention 9 avril 20082 21 sept. 2007 à 00:09
Oui C'est en fait un calendrier tout simple qui affiche le mois en cours avec la date du jour dans une couleur différente. On peut aussi passer de mois en mois dans le passé et le futur. Ce qui est bien c'est qu'il est facilement utilisable et personnalisable même pour des débutants.
Evangun
Messages postés1980Date d'inscriptiondimanche 20 février 2005StatutMembreDernière intervention24 septembre 20124 20 sept. 2007 à 23:02
Bonjour,
est-ce que tu pourrais détailler les fonctions de ton calendrier stp ?
Histoire de ne pas avoir à analyser la source pour savoir pourquoi je devrais l'utiliser.
Merci
20 oct. 2012 à 14:49
Je viens de télécharger et installer le script, mais chez moi il ne fait qu'afficher un calendrier et impossible de sélectionner une date.
Si cela est possible (ce que j'éspère) qu'est-ce que j'ai raté.
Merci.
31 juil. 2009 à 11:27
Je suis débutant et donc j’apprends petit à petit
Mais j'ai une petite question:
Tu n'utilise pas une base de données?
Si tu en utilise pourrais-tu ajouter dans le zip le fichier .SQL
Ce serai génial et sa m'aiderai à comprendre
Merci beaucoup theplayer777
22 mai 2009 à 17:18
jddayofweek(cal_to_jd($CAL_FRENCH, $m, 1, $a), 0);
On utilise la fonction cal_to_jd qui convertit un calendrier en nombre de jours Julien en prenant comme premier paramètre l'une des constantes suivantes : CAL_GREGORIAN, CAL_JULIAN, CAL_JEWISH ou CAL_FRENCH.
Dans le code ci-dessus on rajoute un '$' ce qui veut dire que c'est une variable qui est envoyée et non plus une constante. Le plus étrange c'est que ça passe niquel en exécutant le fichier "index.php" fourni dans le pack mais dès lors qu'on cherche à implémenter la fonction calendrier() ailleurs dans nos pages on se retrouve avec un joli "Notice: Undefined variable: CAL_FRENCH in /Users/xxxx/Sites/calendrier/calendrier.php on line xx", ce qui est logique finalement. Car j'ai beau chercher dans tous les fichiers du pack, je ne trouve aucun endroit ou $CAL_FRENCH a été définie. Et si, dans index.php vous la remplacez par $cequevousvoulez ça passe toujours aussi bien...
Cerise sur le gâteau, en enlevant le $ à CAL_FRENCH et en passant donc la constante (au lieu de la variable) en premier paramètre de la fonction cal_to_jd(), le calendrier ne calcule plus bien les jours du mois précédant celui affiché.
J'ai finalement résolu le problème en passant CAL_GREGORIAN à la fonction cal_to_jd(), sachant que de nos jours le calendrier Julien a été abandonné depuis belle lurette et qu'on est en grégorien. À priori ça fonctionne, mais j'apprécierai que l'auteur du script le vérifie par lui-même... Voilà, j'espère avoir été assez clair :).
Merci :D
24 févr. 2009 à 00:17
@lam55: mettez un $ devant CALL_FRENCH et cela devrait régler le problème.
@bourricot17: Il y aurait certainement un moyen de faire cela mais il faudrait y passer un peu de temps... temps que je n'ai malheureusement pas vraiment ces temps (je suis aux études) mais envoyez-moi un mail avec quelques précisions et je verrai ce que je peux faire
24 févr. 2009 à 00:17
23 févr. 2009 à 23:02
vraiment simple a utiliser
très bon descriptif
10/10
18 févr. 2009 à 19:08
merci d'avance
Notice: Undefined variable: CALL_FRENCH
3 déc. 2008 à 22:22
Je suis vraiment novice en php, je trouve votre calendrier sympa et simple à mettre en œuvre, mais y aurait-il un complément de code qui permettrait de changer les couleurs de jours ou semaines particulières: indication de périodes réservées pour un hôtel ou gite par exemple?
Merci d'avance pour vos infos!
8 juil. 2008 à 17:04
Ok merci, j'avais fini par faire le mien.
JE voudrais ajouter un peu d'ajax pour animer tout ça,
Exemple quand on change de mois , ici la page se recharge, je bosse sur un truc pour eviter ça. La gestion de rendez-vous et d'évenements sera aussi intégré.
A bientôt
8 juil. 2008 à 15:32
$premierdumois = jddayofweek(cal_to_jd($CAL_FRENCH, $m, 1, $a), 0);
par celle-ci:
$premierdumois = jddayofweek(cal_to_jd($CAL_FRENCH, $m, 1, $a), 0)+1;
ce qui aura pour effet de décaler les dates d'un jour... ensuite, dans config.php,
tu modifie cette partie:
$jours = array();
$jours[1] = "Lu";
$jours[2] = "Ma";
$jours[3] = "Me";
$jours[4] = "Je";
$jours[5] = "Ve";
$jours[6] = "Sa";
$jours[7] = "Di";
pour que ta semaine commence par dimanche, ça ferait comme ça:
$jours = array();
$jours[1] = "Di";
$jours[2] = "Lu";
$jours[3] = "Ma";
$jours[4] = "Me";
$jours[5] = "Je";
$jours[6] = "Ve";
$jours[7] = "Sa";
et le tour est joué... si tu n'a pas compris ou que tu as un problème redis-moi ;)
26 juin 2008 à 13:22
OK, mais je fais ça comment , décaler l'ordre de la formule ?
Merci d'avance pour les reponses
26 juin 2008 à 09:55
26 juin 2008 à 01:46
Comment faire pour commencer le calendrier à Dimanche , si c'est possible .
Le code à l'air ok ! et assez simple, à bidouiller facilement
A bientôt
27 mai 2008 à 15:58
J'ai vu que si on avance les mois pour arriver ? l'annee suivante, on a quand m?me le jour colori?. Je m'explique, le 27 mai 2008, 27 mai 2009 ou bien 27 mai 2002 sont tous colori?.
Je pense donc qu'il faut modifier la condition en ajoutant l'ann'e:
if($jour date("d") && $m date("n") && $a == date("Y")){
2 oct. 2007 à 10:30
Bien sur mais si tu n'en veux pas personnelement au pauvre gars qui va maintenir ton code, c'est quand meme plus sympa de toujours les mettre :o)
Si tu veux vraiment rester sur une ligne, tu as ca:
$m = (isset($_GET['m']) && $_GET['m']!='') ? $_GET['m'] : $m_donne;
Encore que pour rendre le code plus lisible, le mieux est de mettre tout ca dans une fonction genre:
function GetParam($szVar,$szDefault = false)
{
return (isset($_GET[szVar]) && $_GET[szVar]!='') ? $_GET[szVar] : $szDefault ;
}
Eric
1 oct. 2007 à 19:49
# if ( isset($_GET['m']) && $_GET['m'] != '') $m = $_GET['m']; else $m = $m_donne;
# if ( isset($_GET['a']) && $_GET['a'] != '') $a = $_GET['a']; else $a = $a_donne;
que ca : ?
# $m = $_GET['m'];
# $a = $_GET['a'];
## if ($m "") { $m $m_donne; }# if ($a "") { $a $a_donne; }
PS : les accolades { } ne sont pas obligatoire sur les conditions lorsque qu'une seule action est faite. :)
27 sept. 2007 à 07:23
Enfin j'n'ai pas encore analysé le code, mais ca m'a l'air assez bien !
:)
26 sept. 2007 à 19:03
Parti une démarche purement technique, j'ai perdu de vue l'aspect pratique.
Il est clair que la grande majorité des utilisations dépasse rarement les 2 siècles (voire largement moins).
J'aurais du réfléchir avant de poster
Toutes mes excuses donc.
Pour le reste, le code est au poil. Modifiable à souhait et très efficace.
Bravo et merci.
26 sept. 2007 à 14:24
[Begin remarque off-topic]
Ca m'a toujours fait marrer de voir des gens se prendre la tete a implementer la fonction "complete" en C alors qu'ils utilisaient derriere des time_t permettant de representer des dates uniquement comprises entre 1970 et 2038 :o)
[End remarque off-topic]
Sinon ton code est tres clair et le resultat tres esthetique.
Bravo!
Eric
26 sept. 2007 à 14:09
plutôt que de faire des formules avec d'innombrables exceptions, tu devraiyt plutôt utiliser les fonctions dates toutes faites de php pour parvenir avec certitude au bon résultat.
26 sept. 2007 à 08:54
Merci pour cette précision je n'étais pas au courant de cette règle... Dès que j'y arriverai (en effet j'ai essayé hier de mettre à jour ma source mais impossible ça ne fonctionnait pas!) je rajouterai ça dans mon code.
Merci encore!
25 sept. 2007 à 11:41
sympa ton calendrier, c'est exactement ce que je cherchais.
Toutefois, il me semble que tu as fais une erreur sur le calcul des années bissextiles.
Règles sur les années bissextiles:
- Les années divisibles par 4 sont bissextiles, pas les autres.
- Exception: les années divisibles par 100 ne sont pas bissextiles.
- Exception à l'exception: les années divisibles par 400 sont bissextiles.
En conséquence, il me semble qu'il faudrait modifier ton code de la façon suivante:
if ( $a%400==0 || ( $a%4==0 && $a%100!=0 ) ) {
$nbrjour = array(0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
}else{
$nbrjour = array(0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
}
Merci beaucoup pour ce code en tout cas.
Jérôme
24 sept. 2007 à 09:01
22 sept. 2007 à 10:34
21 sept. 2007 à 12:06
21 sept. 2007 à 11:57
A connaître d'urgence.
21 sept. 2007 à 10:49
21 sept. 2007 à 10:14
Bon, ce n'est pas pour diminuer ton mérite du tout, mais je dois dire à tous ceux qui cherchent un calendrier d'aller voir aussi les librairies Yahoo (YUI), il y a des scripts vraiment très bien foutus, calendriers cliquables et tout.
21 sept. 2007 à 00:09
20 sept. 2007 à 23:02
est-ce que tu pourrais détailler les fonctions de ton calendrier stp ?
Histoire de ne pas avoir à analyser la source pour savoir pourquoi je devrais l'utiliser.
Merci