Table des matières

+Objectif général

+Objectifs terminaux

-Objectifs intermédiaires

Quelle journée suis-je né ?


Pour faciliter les explications, nous allons employer une convension. Le texte qui sera écrit en noir sera du code HTML, celui en vert sera du javascript et celui en rouge sera soit du javascript soit du HTML à changer en fonction de vos besoins.

Je vais procéder par étape lorsque je vais faire les changements. Ne vous surprenez pas si je réécris des portions de script. Vous remarquerez que les éléments à changer ne seront pas les mêmes (texte rouge).


<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="Adobe PageMill 3.0 Win">
<TITLE>
Jour de la naissance</TITLE>
<SCRIPT LANGUAGE="JavaScript">
<!--

function cala_day(form) {

var nMonth = parseInt(form.month.options[form.month.selectedIndex].value);
var nDay = parseInt(form.day.options[form.day.selectedIndex].value);
var nYear = parseInt(form.year.value);
var nDayOfWeek = cala_weekday(nMonth, nDay, nYear)

day_display(form, nDayOfWeek)
}
function cala_weekday( x_nMonth, x_nDay, x_nYear) {
if(x_nMonth >= 3){
x_nMonth -= 2;
}
else {
x_nMonth += 10;
}
if( (x_nMonth == 11) || (x_nMonth == 12) ){
x_nYear--;
}
var nCentNum = parseInt(x_nYear / 100);
var nDYearNum = x_nYear % 100;
var g = parseInt(2.6 * x_nMonth - .2);
g += parseInt(x_nDay + nDYearNum);
g += nDYearNum / 4;
g = parseInt(g);
g += parseInt(nCentNum / 4);
g -= parseInt(2 * nCentNum);
g %= 7;

if(g < 0){
g += 7;
}

return g;
}
function day_display(form, x_nDayOfWeek) {
if(x_nDayOfWeek == 0) {
form.birthday.value = "Dimanche";
return;
}
if(x_nDayOfWeek == 1) {
form.birthday.value = "Lundi";
return;
}
if(x_nDayOfWeek == 2) {
form.birthday.value = "Mardi";
return;
}
if(x_nDayOfWeek == 3) {
form.birthday.value = "Mercredi";
return;
}
if(x_nDayOfWeek == 4) {
form.birthday.value = "Jeudi";
return;
}
if(x_nDayOfWeek == 5) {
form.birthday.value = "Vendredi";
return;
}
if(x_nDayOfWeek == 6) {
form.birthday.value = "Samedi";
return;
}
form.birthday.value = "Error. Check your input data.";
}
//-->


Ce qui est en vert consiste essentiellement à illustrer le langague de programmation JavaScript. Ce que vous venez de voir sont les définitions des fonctions qui seront utilisées tout au long du codage. Ce qui est aussi important est le JavaScript illustré par le rouge. Il s'agit des prix pour chacun des items de la facture. Cependant, vous ne devez pas mettre de point ni de virgule pour séparer les dollars des sous



</SCRIPT>
</HEAD>
<BODY BGCOLOR="#ffffff">

<FORM>
<TABLE WIDTH="600" BORDER="0" CELLSPACING="2" CELLPADDING="0">
<TR>
<TD>
<!-- START PAGE HERE --><TABLE WIDTH="600" BORDER="0" CELLSPACING="2"
CELLPADDING="0">
<TR>
<TD WIDTH="300">
<B>
L'algorithme qui suit vous permet d'obtenir la journée
où vous êtes né. Pour ce faire, il vous suffit
d'entrer le mois où vous êtes né, la date
à laquelle vous êtes né et finalement, l'année où vous êtes né.
</B></TD>
<TD WIDTH="300">
<TABLE WIDTH="300" BORDER="1" CELLSPACING="2" CELLPADDING="0">
<TR>
<TD WIDTH="300" COLSPAN="2" ALIGN="CENTER" BGCOLOR="#3366cc">
<B><I><FONT COLOR="#ffffff" SIZE="+1" FACE="GENEVA,ARIAL,HELVETICA">
Jour
de la naissance
</FONT></I></B></TD>

</TR>
<TR>
<TD WIDTH="150" BGCOLOR="#ddeeff">
<B>Mois: </B><
SELECT NAME="month">
<OPTION VALUE="1" SELECTED>
Janvier
<OPTION VALUE="2">
Février
<OPTION VALUE="3">
Mars
<OPTION VALUE="4">
Avril
<OPTION VALUE="5">
Mai
<OPTION VALUE="6">
Juin
<OPTION VALUE="7">
Juillet
<OPTION VALUE="8">
Août
<OPTION VALUE="9">
Septembre
<OPTION VALUE="10">
Octobre
<OPTION VALUE="11">
Novembre
<OPTION VALUE="12">
Decembre
</SELECT><BR>
<BR>
<B>
Jour: </B><SELECT NAME="day">
<OPTION VALUE="1" SELECTED>1
<OPTION VALUE="2">2
<OPTION VALUE="3">3
<OPTION VALUE="4">4
<OPTION VALUE="5">5
<OPTION VALUE="6">6
<OPTION VALUE="7">7
<OPTION VALUE="8">8
<OPTION VALUE="9">9
<OPTION VALUE="10">10
<OPTION VALUE="11">11
<OPTION VALUE="12">12
<OPTION VALUE="13">13
<OPTION VALUE="14">14
<OPTION VALUE="15">15
<OPTION VALUE="16">16
<OPTION VALUE="17">17
<OPTION VALUE="18">18
<OPTION VALUE="19">19
<OPTION VALUE="20">20
<OPTION VALUE="21">21
<OPTION VALUE="22">22
<OPTION VALUE="23">23
<OPTION VALUE="24">24
<OPTION VALUE="25">25
<OPTION VALUE="26">26
<OPTION VALUE="27">27
<OPTION VALUE="28">28
<OPTION VALUE="29">29
<OPTION VALUE="30">30
<OPTION VALUE="31">31
</SELECT><BR>
<BR>
<B>
Année:</B> <INPUT TYPE="text" NAME="year" SIZE="4"></TD>
<TD WIDTH="150" ALIGN="CENTER" BGCOLOR="#ddeeff">
<BR>
<B>
Example:</B> <BR>
<B><I><FONT SIZE="-1">
Novembre 1, 1970<BR>
Dimanche<BR>
<BR>
</FONT></I>
Vous êtes né un</B> <BR>
<
INPUT TYPE="text" NAME="birthday" SIZE="10"></TD>
</TR>
<TR>
<TD WIDTH="300" COLSPAN="2" ALIGN="CENTER" BGCOLOR="#ddeeff">
<
INPUT TYPE="button" VALUE="OK" ONCLICK="cala_day(this.form)"><INPUT
TYPE="reset"
>
</TD>
</TR>
</TABLE></TD>
</TR>
</TABLE></TD>
</TR>
</TABLE></FORM>

</BODY>
</HTML>


Ce qui est en rouge dans le texte ci-haut sont toutes les informations concernant le contenu de la facture. Pour ce qui est du vert, il s'agit du JavaScript qui est appelé.