Affichage fête du jour [Résolu]

Signaler
Messages postés
9
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
4 novembre 2008
-
Messages postés
9
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
4 novembre 2008
-
Bonjour à tous

Désirant afficher la fête du jour sur un site ami, étant complétement novice en javascript j'ai glané des morceaux de script pour faire mon script.
J'ai fait un tableau avec tous les prénoms et avec ce code j'arrive à afficher la fête. Par contre désirant changer la couleur du saint en bleu et d'une sainte en rouge,les couleurs étant définies par un id qui setruve dans un fichier css. J'ai tenté de faire une regex mais là elle ne fonctionne pas. La f^te est corectement affichée chaque jour mais la couleur ne change pas.
Voici mon code:
date = adate.getDate()-1;
amois = adate.getMonth();
var feteJour = 'getFonc(amois,date)';
var reg = /^Saint\s/;
var resultat = reg.exec(feteJour)
if(resultat != 0 ) // On affiche  le saint en couleur bleue
document.write(''+"Aujourd'hui nous fêtons " +("" + getFonc(amois,date) + ""));
else //On affiche  la sainte en couleur rouge
document.write(''+"Aujourd'hui nous fêtons "  +("" + getFonc(amois,date) + ""));

Pour compliquer la chose je voudrai que la fête serve de lien pour afficher une page de site avec descriptif du saint. La liste des URL étant également dans un tableau j'arrive a l'appeler par une fonction mais je ne sait pas faire le lien entre les 2 fonctions.
Merci d'avance de tous les conseils que vous voudrez bien me donner.

6 réponses

Messages postés
1251
Date d'inscription
mercredi 7 août 2002
Statut
Modérateur
Dernière intervention
10 avril 2013

Re,

je ne comprend pas très bien l'utilité de transférer toutes ces données coté client si c'est juste pour afficher le nom d'un saint et un lien vers une page.
Pourquoi ne pas faire tout ce traitement coté serveur avec une base de donnée et un peu de code php ?
Sauf si l'intéret est de donner la possibilité à l'utilisateur de trouver un saint pour une date !?!
De plus ton code n'est pas très optimisé !

Pour faire simple :
1. avoir une table contenant pour chaque jour de caque mois le nom du saint et les autres infos comme le sexe, le path vers le site des Saints, ect...
Ex :
Mois Jour NomSaint Sexe Path
1 1 Fulgence M url du site
1 2 Bazile M url du site
.....

2. Faire une requète sur cette table
Select ma_table_saint.*
From ma_table_saint
Where Mois 1 and Jour 2

3. Affichage des résultats

Nickadele

Nickadele
Messages postés
1251
Date d'inscription
mercredi 7 août 2002
Statut
Modérateur
Dernière intervention
10 avril 2013

Bonjour,

que contient ta variable feteJour ?

La liste des URL étant également dans un tableau j'arrive a l'appeler par une fonction mais je ne sait pas faire le lien entre les 2 fonctions : Qu'entends-tu par lien entre les 2 fonctions ?

Nickadele
----------------------------------------------
non, ma belle ne s'appel pas Adèle
Mon Blog
Messages postés
9
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
4 novembre 2008

Bonsoir nickadele

Merci de te pencher sur mon problème.
La variable feteJour contient (Saint René) ou (Sainte Lucie) sans les parenthèses, par exemple suivant la date du jour et sélectionné dans un array qui contient tous les saints. Donc j'ai pensé quand faisant une condition sur la présence du mot Saint mais n'y connaissant pas grand chose en javascript mon code ne fonctionne pas.
Mon but est d'afficher d'une couleur différente les saints et les saintes.
Pour le lien je voudrai quand cliquant sur le nom du saint un lien ouvre un site ou se trouve les pages différentes chaque jour avec la description de l'historique du saint, les url se trouvant également dans un array.

Je te mets l'ensemble du fichier Ephemeride.js
var dd1, delai;
function debuteDate1(delai1) {
  var adate, date, amois;
  delai = delai1;
  adate = new Date();
  date = adate.getDate();
  amois = adate.getMonth()+1;

  if (amois == 1) date += " Janvier";
  else if (amois == 2) date += " Fevrier";
  else if (amois == 3) date += " Mars";
  else if (amois == 4) date += " Avril";
  else if (amois == 5) date += " Mai";
  else if (amois == 6) date += " Juin";
  else if (amois == 7) date += " Juillet";
  else if (amois == 8) date += " Aout";
  else if (amois == 9) date += " Septembre";
  else if (amois == 10) date += " Octobre";
  else if (amois == 11) date += " Novembre";
  else if (amois == 12) date += " Decembre";
  if (adate.getYear() > "99")
    date += " " + adate.getYear();
  else date += "  " + (1900 + adate.getYear());
  date = "  " + date;
  document.Tempsh.date.value = date;
  dd1 = setTimeout("debuteDate1(delai)",delai1);
}
function getFonc(mois,jour) {
      var ar = new Array(12)
     ar[0] = getFete01(jour)
      ar[1] = getFete02(jour)
    ar[2] = getFete03(jour)
    ar[3] = getFete04(jour)
    ar[4] = getFete05(jour)
    ar[5] = getFete06(jour)
    ar[6] = getFete07(jour)
    ar[7] = getFete08(jour)
    ar[8] = getFete09(jour)
    ar[9] = getFete10(jour)
    ar[10] = getFete11(jour)
    ar[11] = getFete12(jour)
    return ar[mois]
}

function getFete01(num)
{var fetes = new Array("Saint Fulgence","Saint Bazile","Sainte Geneviève","Saint Odilon","Saint Edouard","Sainte Mélanie","Saint Raymond","Saint Lucien","Sainte Alix","Saint Guillaume","Saint Paulin","Sainte Tatiana","Sainte Yvette","Sainte Nina","Saint Rémi","Saint Marcel","Sainte Roseline","Sainte Prisca","Saint Marius","Saint Sébastien","Sainte Agnès","Saint Vincent","Saint Barnard","Saint Francis","Saint Paul","Sainte Paule","Sainte Angèle","Saint Thomas","Saint Gildas","Sainte Martine","Sainte Marcelle");
       return fetes[num]}

function getFete02(num)
{var fetes = new Array("Sainte Ella","Saint Théophile","Saint Blaise","Sainte Véronique","Sainte Agathe","Saint Gaston","Sainte Eugénie","Sainte Jacqueline","Sainte Apolline","Saint Arnaud","Sainte Eloïse","Saint Félix","Sainte Béatrice","Saint Valentin","Saint Claude","Sainte Julienne","Saint Alexis","Sainte Bernadette","Saint Gabin","Sainte Aimée","Saint Pierre Damien","Sainte Isabelle","Saint Lazare","Saint Modeste","Saint Roméo","Saint Nestor","Sainte Honorine","Saint Romain","Saint Auguste");
       return fetes[num]}

function getFete03(num)
{var fetes = new Array("Saint Aubin","Saint Charles","Saint Gwénolé","Saint Casimir","Saint Olive","Sainte Colette","Sainte Félicité","Saint Félix","Sainte Françoise","Saint Vivien","Sainte Rosine","Sainte Justine","Saint Rodrigue","Sainte Mathilde","Sainte Louise","Sainte Bénédicte","Saint Patrice","Saint Cyrille","Saint Joseph","Saint Herbert","Sainte Clémence","Sainte Léa","Saint Victorien","Saint Aldemar","Sainte Nancy","Sainte Larissa","Saint Habib","Saint Gontran","Sainte Gwladys","Saint Amédée","Saint Benjamin");
       return fetes[num]}

function getFete04(num)
{var fetes = new Array("Saint Hugues","Sainte Sandrine","Saint Richard","Saint Isidore","Sainte Irène","Saint Marcellin","Saint Jean-Baptiste","Sainte Julie","Saint Gauthier","Saint Fulbert","Saint Stanislas","Saint Jules","Sainte Ida","Saint Maxime","Saint Paterne","Saint Benoît-Joseph","Saint Anicet","Saint Parfait","Sainte Emma","Sainte Odette","Saint Anselme","Saint Alexandre","Saint Georges","Saint Fidèle","Saint Marc","Sainte Alida","Sainte Zita","Sainte Valérie","Sainte Catherine de Sienne","Saint Robert");
    return fetes[num]}

function getFete05(num)
{var fetes = new Array("Saint Jérémie","Saint Boris","Saint Philippe","Saint Sylvain","Sainte Judith","Sainte Prudence","Sainte Gisèle","Saint Désiré","Sainte Pacôme","Sainte Solange","Sainte Estelle","Saint Achille","Sainte Rolande","Saint Matthias","Sainte Denise","Saint Honoré","Saint Pascal","Saint Eric","Saint Yves","Saint Bernardin","Saint Constantin","Saint Emile","Saint Didier","Saint Donatien","Sainte Sophie","Saint Bérenger","Sainte Margaret","Saint Germain","Saint Aymar","Saint Ferdinand","Sainte Pétronille");
   return fetes[num]}

function getFete06(num)
{var fetes = new Array("Saint Justin","Sainte Blandine","Saint Kévin","Sainte Clotilde","Saint Igor","Saint Norbert","Saint Gilbert","Saint Médard","Sainte Diane","Saint Landry","Saint Barnabé","Saint Guy","Saint Antoine","Sainte Elisée","Sainte Germaine","Saint Régis","Saint Hervé","Saint Léonce","Saint Romuald","Saint Silvère","Saint Rodolphe","Saint Alban","Saint Audrey","Saint Jean-BaptiSainte","Saint Prosper","Saint Anthelme","Saint Fernand","Saint Irénée","Saint Pierre/St Paul","Saint Martial");
   return fetes[num]}

function getFete07(num)
{var fetes = new Array("Saint Thierry","Saint Martinien","Saint Thomas","Saint Florent","Sainte Zoé","Sainte Mariette","Saint Raoul","Saint Thibaut","Sainte Amandine","Saint Ulrich","Saint Benoît","Saint Olivier","Saint Henri/St Joel","Saint Camille","Saint Donald","Sainte Carmen","Sainte Charlotte","Saint Frédéric","Saint Arsène","Sainte Marina","Saint Victor","Sainte Marie-Madeleine","Sainte Brigitte","Sainte Christine","Saint Jacques","Sainte Anne","Sainte Nathalie","Saint Samson","Sainte Marthe","Sainte Juliette","Saint Ignace");
   return fetes[num]}

function getFete08(num)
{var fetes = new Array("Saint Alphonse","Saint Julien","Sainte Lydie","Saint Jean-Marie","Saint Abel","Saint Octavien","Saint Gaétan","Saint Dominique","Saint Amour","Saint Laurent","Sainte Claire","Sainte Clarisse","Saint Hippolyte","Saint Evrard","Sainte Marie","Saint Armel","Saint Hyacinthe","Sainte Hélène","Saint Jean Eudes","Saint Bernard","Saint Christophe","Saint Fabrice","Sainte Rose","Saint Barthélémy","Saint Louis","Sainte Natacha","Sainte Monique","Saint Augustin","Sainte Sabine","Saint Fiacre","Saint Aristide");
   return fetes[num]}

function getFete09(num)
{var fetes = new Array("Saint Gilles","Sainte Ingrid","Saint Grégoire","Sainte Rosalie","Sainte Raïssa","Saint Bertrand","Sainte Reine","Saint Adrien","Saint Alain","Sainte Inès","Saint Adelphe","Saint Apollinaire","Saint Aimé","Saint Cyprien","Saint Roland","Sainte Edith","Saint Renaud","Sainte Nadège","Sainte Emilie","Saint Davy","Saint Matthieu","Saint Maurice","Saint Constant","Sainte Thècle","Saint Hermann","St Côme/St Damien","Saint Vincent de Paul","Saint Venceslas","Saint Michel","Saint Jérôme");
   return fetes[num]}

function getFete10(num)
{var fetes = new Array("Sainte Thérèse","Saint Léger","Saint Gérard","Saint François","Sainte Fleur","Saint Bruno","Saint Serge","Sainte Pélagie","Saint Denis","Saint Ghislain","Saint Firmin","Saint Wilfried","Saint Géraud","Saint Juste","Sainte Aurélie","Sainte Edwige","Saint Baudouin","Saint Luc","Saint René","Sainte Adeline","Sainte Céline","Sainte Elodie","Saint Jean de Capistran","Saint Florentin","Saint Crépin","Saint Dimitri","Sainte Emeline","Saint Simon","Saint Narcisse","Saint Bienvenue","Saint Quentin");
   return fetes[num]}

function getFete11(num)
{var fetes = new Array("Tous les Saints","Saint Victorin","Saint Hubert","Saint Charles","Sainte Sylvie","Sainte Bertille","Sainte Carine","Saint Geoffroy","Saint Théodore","Saint Léon","Saint Martin","Saint Christian","Saint Brice","Saint Sidoine","Saint Albert","Sainte Marguerite","Sainte Elisabeth","Sainte Aude","Saint Tanguy","Saint Edmond","Saint Dimitri","Sainte Cécile","Saint Clément","Sainte Flore","Sainte Catherine","Sainte Delphine","Saint Séverin","Saint Jacques","Saint Saturnin","Saint André");
       return fetes[num]}

function getFete12(num)
{var fetes = new Array(
"Sainte Florence","Sainte Viviane","Saint Xavier","Sainte Barbara","Saint Gérald","Saint Nicolas","Saint Ambroise","Saint Macaire","Saint Pierre Fourier","Saint Romaric","Saint Daniel","Sainte Chantal","Sainte Lucie","Sainte Odile","Sainte Ninon","Sainte Alice","Saint Gaël","Saint Gatien","Saint Urbain","Saint Théophile","Saint Pierre","Sainte Françoise","Saint Armand","Sainte Adèle","Saint Emmanuel","Saint Etienne","Saint Jean","Saint Gaspard","Saint David","Saint Roger","Saint Sylvestre");
   return fetes[num]}

var adate, date, amois;
adate = new Date();

//Affichage ephemeride
    date = adate.getDate()-1;
      amois = adate.getMonth();
function changeCouleur()
{
    var feteJour = 'getFonc(amois,date)';
    var reg = /^Saint\s/;
    var resultat = reg.exec(feteJour)
    if(resultat != 0 ) // On affiche  le saint en couleur bleue
    document.getElementById("saint");
    else //On affiche  la sainte en couleur rouge
    document.getElementById("sainte");
    }
    document.write(''+"Aujourd'hui nous fêtons " + ''+getFonc(amois,date) +"");

C'est un peu long mais les array sont fait sur 365 jours.
D'avance merci
Messages postés
1251
Date d'inscription
mercredi 7 août 2002
Statut
Modérateur
Dernière intervention
10 avril 2013

Bonjour,

selon ton code, feteJour ne contient pas la fete du jour mais la chaine de caratères 'getFonc(amois,date)'.
A la place de :
var feteJour = 'getFonc(amois,date)';
Faire :
var feteJour = getFonc(amois,date);

Nickadele
Messages postés
9
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
4 novembre 2008

Bonjour nickadele

J'ai supprimer les apostrophes comme tu le dit mais apparemment cela ne suffit pas. Il n'y a aucun changement à l'affichage. Je pense que la suite du code est bourré d'erreurs.
danamel

[../auteur/NICKADELE/13477.aspx ]
Messages postés
9
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
4 novembre 2008

N'étant pas très fort non plus en php je pensais que le javascript serait plus simple. Mais je vais essayer ta solution en espérant m'en sortir.
Merci encore pour ta contribution.
Danamel