Calendrier

Abdoul86 Messages postés 5 Date d'inscription mercredi 5 août 2009 Statut Membre Dernière intervention 3 septembre 2009 - 31 août 2009 à 12:55
Abdoul86 Messages postés 5 Date d'inscription mercredi 5 août 2009 Statut Membre Dernière intervention 3 septembre 2009 - 3 sept. 2009 à 10:57
Bonjour, je ne sais pas si c'est dans cette partie du forum que je peux poser probleme.
Bon, j'ai copier un code de calendrier pour l'appeler sur une de mes pages php et j'ai ajouté un icone pour que le calendrier apparaisse lorsqu'on aura cliqué dessus.
Mais bon voilà le calendrier apparait mais qd je valide la date elle n'apparait pas ds mon champ de saisie. J'ai vraiment besoin de votre aide.
Merci d'avance.
Voici le code du calendrier: calendrier.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns= "http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Shetanus - Le site web</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<style type="text/css">
<!--
.Style1 {color: #000000}
-->
</style>
</head>


<title>Exemple de calendrier</title>



<style type="text/css">
<!--

body {
font-family: Tahoma;
margin-left: 0;
margin-top: 0;
margin-right: 0;
margin-bottom: 0;
}

.ds_box {
background-color: #FFF;
border: 0;
position: absolute;
z-index: 3767;
}

.ds_tbl {
background-color: #FFF;
}

.ds_head {
background-color: #009933;
color: #FFF;
font-size: 9px;
font-weight: bold;
text-align: center;
letter-spacing: 1px;
}

.ds_cell {
background-color: #0066FF;
color: #000;
font-size: 9px;
padding: 1px;
cursor: pointer;
}

.ds_cell:hover {
background-color: #F3F3F3;
} /* This hover code won't work for IE */
-->
</style>


<script type="text/javascript">
document.write('<script type="text/javascript" src="temps.php"><\/SCRIPT>');
</SCRIPT>







<script type="text/javascript">
// <!-- <![CDATA[


// Project: Dynamic Date Selector (DtTvB) - 2006-03-16
// Script featured on JavaScript Kit- http://www.javascriptkit.com
// Code begin...
// Set the initial date.
var ds_i_date = new Date();
ds_c_month = ds_i_date.getMonth() + 1;
ds_c_year = ds_i_date.getFullYear();

// Get Element By Id
function ds_getel(id) {
return document.getElementById(id);
}

// Get the left and the top of the element.
function ds_getleft(el) {
var tmp = el.offsetLeft;
el = el.offsetParent
while(el) {
tmp += el.offsetLeft;
el = el.offsetParent;
}
return tmp;
}
function ds_gettop(el) {
var tmp = el.offsetTop;
el = el.offsetParent
while(el) {
tmp += el.offsetTop;
el = el.offsetParent;
}
return tmp;
}

// Output Element
var ds_oe = ds_getel('ds_calclass');
// Container
var ds_ce = ds_getel('ds_conclass');

// Output Buffering
var ds_ob = '';
function ds_ob_clean() {
ds_ob = '';
}
function ds_ob_flush() {
ds_oe.innerHTML = ds_ob;
ds_ob_clean();
}
function ds_echo(t) {
ds_ob += t;
}

var ds_element; // Text Element...

var ds_monthnames = [
'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin',
'Juillet', 'Aout', 'Septembre', 'Octobre', 'Novembre', 'Décembre'
]; // You can translate it for your language.

var ds_daynames = [
'Dim', 'Lun', 'Mar', 'Me', 'Jeu', 'Ven', 'Sam'
]; // You can translate it for your language.

// Calendar template
function ds_template_main_above(t) {
return ''
+ '----
'
+ ' << |'
+ '< |'
+ 'Fermer |'
+ '> |'
+ '>> |'
+ ''
+ '----
'
+ '' + t + ', '
+ ''
+ '----
';
}

function ds_template_day_row(t) {
return '' + t + ' |';
// Define width in CSS, XHTML 1.0 Strict doesn't have width property for it.
}

function ds_template_new_week() {
return '----
';
}

function ds_template_blank_cell(colspan) {
return ', '
}

function ds_template_day(d, m, y) {
return '' + d + ' |';
// Define width the day row.
}

function ds_template_main_below() {
return ''
+ '
';
}

// This one draws calendar...
function ds_draw_calendar(m, y) {
// First clean the output buffer.
ds_ob_clean();
// Here we go, do the header
ds_echo (ds_template_main_above(ds_monthnames[m - 1] + ' ' + y));
for (i = 0; i < 7; i ++) {
ds_echo (ds_template_day_row(ds_daynames[i]));

}
// Make a date object.
var ds_dc_date = new Date();
ds_dc_date.setMonth(m - 1);
ds_dc_date.setFullYear(y);
ds_dc_date.setDate(1);
if (m 1 || m 3 || m == 5 || m == 7 || m == 8 || m == 10 || m == 12) {
days = 31;
} else if (m 4 || m 6 || m == 9 || m == 11) {
days = 30;
} else {
days (y % 4 0) ? 29 : 28;
}
var first_day = ds_dc_date.getDay();
var first_loop = 1;
// Start the first week
ds_echo (ds_template_new_week());
// If sunday is not the first day of the month, make a blank cell...
if (first_day != 0) {
ds_echo (ds_template_blank_cell(first_day));
}
var j = first_day;
for (i = 0; i < days; i ++) {
// Today is sunday, make a new week.
// If this sunday is the first day of the month,
// we've made a new row for you already.
if (j == 0 && !first_loop) {
// New week!!
ds_echo (ds_template_new_week());
}
// Make a row of that day!
ds_echo (ds_template_day(i + 1, m, y));
// This is not first loop anymore...
first_loop = 0;
// What is the next day?
j ++;
j %= 7;
}
// Do the footer
ds_echo (ds_template_main_below());
// And let's display..
ds_ob_flush();
// Scroll it into view.
ds_ce.scrollIntoView();
}

// A function to show the calendar.
// When user click on the date, it will set the content of t.
function ds_sh(t) {
// Set the element to set...
ds_element = t;
// Make a new date, and set the current month and year.
var ds_sh_date = new Date();
ds_c_month = ds_sh_date.getMonth() + 1;
ds_c_year = ds_sh_date.getFullYear();
// Draw the calendar
ds_draw_calendar(ds_c_month, ds_c_year);
// To change the position properly, we must show it first.
ds_ce.style.display = '';
// Move the calendar container!
the_left = ds_getleft(t);
the_top = ds_gettop(t) + t.offsetHeight;
ds_ce.style.left = the_left + 'px';
ds_ce.style.top = the_top + 'px';
// Scroll it into view.
ds_ce.scrollIntoView();
}

// Hide the calendar.
function ds_hi() {
ds_ce.style.display = 'none';
}

// Moves to the next month...
function ds_nm() {
// Increase the current month.
ds_c_month ++;
// We have passed December, let's go to the next year.
// Increase the current year, and set the current month to January.
if (ds_c_month > 12) {
ds_c_month = 1;
ds_c_year++;
}
// Redraw the calendar.
ds_draw_calendar(ds_c_month, ds_c_year);
}

// Moves to the previous month...
function ds_pm() {
ds_c_month = ds_c_month - 1; // Can't use dash-dash here, it will make the page invalid.
// We have passed January, let's go back to the previous year.
// Decrease the current year, and set the current month to December.
if (ds_c_month < 1) {
ds_c_month = 12;
ds_c_year = ds_c_year - 1; // Can't use dash-dash here, it will make the page invalid.
}
// Redraw the calendar.
ds_draw_calendar(ds_c_month, ds_c_year);
}

// Moves to the next year...
function ds_ny() {
// Increase the current year.
ds_c_year++;
// Redraw the calendar.
ds_draw_calendar(ds_c_month, ds_c_year);
}

// Moves to the previous year...
function ds_py() {
// Decrease the current year.
ds_c_year = ds_c_year - 1; // Can't use dash-dash here, it will make the page invalid.
// Redraw the calendar.
ds_draw_calendar(ds_c_month, ds_c_year);
}

// Format the date to output.
function ds_format_date(d, m, y) {
// 2 digits month.
m2 = '00' + m;
m2 = m2.substr(m2.length - 2);
// 2 digits day.
d2 = '00' + d;
d2 = d2.substr(d2.length - 2);
// YYYY-MM-DD
return y + '-' + m2 + '-' + d2;
// return d2 + '-' + m2 + '-' + y;
}

// When the user clicks the day.
function ds_onclick(d, m, y) {
// Hide the calendar.
ds_hi();
// Set the value of it, if we can.
if (typeof(ds_element.value) != 'undefined') {
ds_element.value = ds_format_date(d, m, y);
// Maybe we want to set the HTML in it.
} else if (typeof(ds_element.innerHTML) != 'undefined') {
ds_element.innerHTML = ds_format_date(d, m, y);
// I don't know how should we display it, just alert it to user.
} else {
alert (ds_format_date(d, m, y));
}
}

// And here is the end.

// ]]> -->
</script>


</html>

et voici la page avec mon champ de saise:date.php

<?php include("calendrier.html");?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Document sans titre</title>
</head>


date:
" />

</html>

7 réponses

loulou1988 Messages postés 4 Date d'inscription mardi 1 septembre 2009 Statut Membre Dernière intervention 2 septembre 2009
1 sept. 2009 à 17:20
salut
Je vois que vous travailler, mais je ne comprenais pas le but de la zone texte
quand je clique sur la date
Disappear completement
0
Abdoul86 Messages postés 5 Date d'inscription mercredi 5 août 2009 Statut Membre Dernière intervention 3 septembre 2009
2 sept. 2009 à 10:52
justement c'est là que se situe mon probleme je voudrais que la date s'affiche dans la zone de texte. mais quand je choisi une date sur le calendrier je voudrais qu'elle apparaisse dans la zone de texte mais rien. Alors si quelqu'un pourrait voir la faute qu'il ya dans mon code ça m'aiderait beaucoup. Merci
0
cocod81 Messages postés 1 Date d'inscription mercredi 2 septembre 2009 Statut Membre Dernière intervention 2 septembre 2009
2 sept. 2009 à 14:02
Bonjour,

Le sujet m'interesse mais je n'y connais absolument rien puis je faire un copier/coller du code en question ? mon soucis :
- j'ai créer un site web pour un camping et je souhaite y mettre un calendrier pour la gestion des locations :-/ je souhaite un truc tout simple genre en vert quand c'est libre en rouge occupé alors si quelqu'un pouvais m'apporter son aide

A bientôt


Coco super novice
0
loulou1988 Messages postés 4 Date d'inscription mardi 1 septembre 2009 Statut Membre Dernière intervention 2 septembre 2009
2 sept. 2009 à 23:14
SALUT
Je vais essayer de découvrir l'erreur
Mais je voulais me renseigner sur votre diplôme, il est la science média?
Ce travail a été magnifique, mais il lui manque un peu.
Je suis un débutant vrai, mais je ferai de mon mieux pour vous aider.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Bemale Messages postés 24 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 11 septembre 2009
3 sept. 2009 à 00:50
Et si dans ton onclick="ds_sh(this)" tu mets onclick="ds_sh(this.previousElementSibling)" ?

previousElementSibling renvoie l'élément qui précède en l'occurrence ici le champ .

Parce que la fonction ds_sh(element), attend l'élément a modifier par le calendrier. Quand tu fais " />

Le this ici est l'image, le code javascript modifie la valeur de l'élément passé en paramètre donc ici le value de l'image ?

Le problème de la solution fournie est que le champ doit précéder exactement ton image. Pas de balise entre les deux.
0
Bemale Messages postés 24 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 11 septembre 2009
3 sept. 2009 à 10:10
En fait sinon il y a plus simple :



Ici j'ai mis un ID (champ_date) sur la zone de saisie.
Dans le onclick de l'image il y a une recherche de l'élément ayant pour ID : champ_date (document.getElementById('champ_date')).

Pour répondre à la première question effectivement ce n'est pas le bon forum, ça aurait été plutôt à poster dans le forum javascript.
0
Abdoul86 Messages postés 5 Date d'inscription mercredi 5 août 2009 Statut Membre Dernière intervention 3 septembre 2009
3 sept. 2009 à 10:57
Yataaaaaaaaaa
ça marche merci bcp
0
Rejoignez-nous