UN CALENDRIER DE PLUS ÇA NE FAIT PAS DE MAL!

Neill Messages postés 11 Date d'inscription samedi 28 août 2004 Statut Membre Dernière intervention 15 octobre 2006 - 21 janv. 2005 à 19:08
JulioDelphi Messages postés 2226 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 18 novembre 2010 - 28 déc. 2007 à 12:01
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/28869-un-calendrier-de-plus-ca-ne-fait-pas-de-mal

JulioDelphi Messages postés 2226 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 18 novembre 2010 14
28 déc. 2007 à 12:01
Du débutantiste aigü.
les liens sont en local chez toi dans ton dossier "php-cours", passe par le HTML avant d'attaquer le php. Je me demande même comment le reste tiens debout ... Sans parler des erreurs a répétitions oulalaa ... un calendrier de plus qui fait mal ...
D1stort1on Messages postés 57 Date d'inscription samedi 11 janvier 2003 Statut Membre Dernière intervention 30 janvier 2010
12 août 2007 à 11:22
Salut, vraiment cool ton code, 1000 merci c'est exactement ce que je cherchais ;) l'ai mis sur mon site www.berguerand.ch byebye
cs_manchouille Messages postés 1 Date d'inscription lundi 16 octobre 2006 Statut Membre Dernière intervention 8 août 2007
8 août 2007 à 16:14
Sympa merci pour ce code. Facile à coupler à sa propre base et parametres visuels simples à changer? Bravo
cs_MANZO Messages postés 2 Date d'inscription mardi 19 août 2003 Statut Membre Dernière intervention 20 juin 2007
20 juin 2007 à 20:30
Bonjour j'ai un problème sur pour le calendrier :
while ($val = mysql_fetch_array($result))
{
$date_event = mysql_date($val["date_event"]);
$idevent = $val["idevent"];
if($i==$date_event)
{
$cssClass = "date_event";
$htmltext = "<td align="right" class="$cssClass">$i</td>";
}
}

c'est au niveau de la boucle sa me retourne :
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home.10.6/www/calendrier/calendar.php on line 137

Merci pour votre aide.
papachristian Messages postés 4 Date d'inscription mardi 10 août 2004 Statut Membre Dernière intervention 17 juin 2007
17 juin 2007 à 08:03
J'ai trouvé la solution simple pour les débutants comme moi !
Si tu nous ajoutais un fichier SQL dans le Zip cela en aiderait plus d'un à commencer par moi !

j'y suis presque je reçois actuellement ce message d'erreur :
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/m/c/a/mcardenne/www/event.php on line 13
lorsque, je clic sur la date marquée
Une idée ?
papachristian Messages postés 4 Date d'inscription mardi 10 août 2004 Statut Membre Dernière intervention 17 juin 2007
16 juin 2007 à 18:51
oups je vient de voir ceci
dans php admin
Aucune clef n'est définie !
papachristian Messages postés 4 Date d'inscription mardi 10 août 2004 Statut Membre Dernière intervention 17 juin 2007
16 juin 2007 à 18:50
oui je vient de la crée et cela ne change rien
voici son url http://mcardenne.ovh.org/index.php
Croquette007 Messages postés 35 Date d'inscription dimanche 29 mai 2005 Statut Membre Dernière intervention 13 mars 2007
16 juin 2007 à 18:43
tu as bien créé la table "events" avec les trois champs dans ta base de donnée ?

champ 1: idevent type: int valeur: 11
champ 2: date_event type: date
champ 3: desc_event type: text

dis nous si ça marche ;)
papachristian Messages postés 4 Date d'inscription mardi 10 août 2004 Statut Membre Dernière intervention 17 juin 2007
16 juin 2007 à 18:31
slt j'ai + ou - tous compris sauf se qu'il faut faire dans admin php
que doit on ajouter exactement car même aprés avoir modifier le fichier connexion je reçois toujour le message Calendrier Impossible de se connecter
fugazi22 Messages postés 1 Date d'inscription vendredi 20 avril 2007 Statut Membre Dernière intervention 13 juin 2007
13 juin 2007 à 15:40
Bonjour, super source (surtout pour un débutant comme moi!).
Par contre, comment afficher plusieurs évènements d'une même date, mais dans le fichier event.php, pas avec les infos bulles javascript?

Merci!
Croquette007 Messages postés 35 Date d'inscription dimanche 29 mai 2005 Statut Membre Dernière intervention 13 mars 2007
18 mai 2007 à 13:26
J'ai essayer avec ça mais ça marche pas:

<?php
include ("connexion.php");
$j = $_GET["jour"];
$m = $_GET["mois"];
$a = $_GET["annee"];

if(checkdate($m,$j,$a))
{
$date = $a."-".$m."-".$j;
$sql = "DELETE FROM events WHERE date_event=$date";
$result = mysql_query($sql);
echo "événement supprimé avec succès";
}
else
{
echo "votre date n\'est pas valide";
}

?>



c'est ça qu'est pas valide: DELETE FROM events WHERE date_event=$date
quelqu'un peut-il m'aider svp ?

Merci!
Croquette007 Messages postés 35 Date d'inscription dimanche 29 mai 2005 Statut Membre Dernière intervention 13 mars 2007
18 mai 2007 à 11:41
Bijour à tous les amis,

Superbe source que voici. Après quelques heures tout marche enfin très bien chez moi ! J'ai même fait des petites infobulles qui affichent la description de l'évenement, ça marche super bien !

J'ai mon petit formulaire qui me permet de rajouter (ou de modifier) des évennements et ça marche super !

Cependant: comment effacer un évennement ? Je peux sans doute le faire manuellement via phpMyAdmin mais je voudrais pouvoir le faire via un bouton ou un formulaire, donc s'il vous plaît, pouvez-vous me dire en deux mot comment faire une requête qui efface un évennement ?

UN GRAND MERCI PAR AVANCE !
Bisous.
diabloii77 Messages postés 1 Date d'inscription vendredi 4 mai 2007 Statut Membre Dernière intervention 6 mai 2007
6 mai 2007 à 10:30
bonjour a tous !
Je felicite le creteur de ce merveilleux outils ^^ =D
une tite question, est il possible d'afficher lors d'un clic sur un lien, toute l'anné, et donc avoir la possibilité de voir tout les evenements?
Je vous remercie ^^
jacky quartz Messages postés 19 Date d'inscription dimanche 12 novembre 2000 Statut Membre Dernière intervention 27 juin 2007
5 mai 2006 à 08:57
Bonjour à tous !
Je suis trés intéressé par ce calendrier, par contre je galére carément pour afficher les infos en cliquant sur une date.
J'ai bien réalisé une page event.php, je fais passer en GET le jour($ref) le mois et l'année, mais il y a une chose qui ne fonctionne pas dans la requête pour afficher le contenu de desc_event.
Ma requête :
<?php
include 'connexion.php';
$wouat = date("Y-m-d", mktime(0,0,0, $_GET['mois'],$_GET['ref'],$_GET['annee']));
$wouat2 = date("d/m/Y", mktime(0,0,0, $_GET['mois'],$_GET['ref'],$_GET['annee']));
?>
Détail du <?php echo $wouat2; ?>

<h2>
<?php
$query = "SELECT * FROM events WHERE date_event='$wouat'";
$result = mysql_query($query);
while ($val = mysql_fetch_array($result)) {
echo $val[2];
}
?>

Or si je ne m'abuse, $val[2], devrait bien m'afficher desc_event de ma table events ?
(Puisque sur l'organisation de la table events :
$val[0] vaut idevent
$val[1] vaut date_event
donc $val[2] vaut bien desc_event...)
Me trompe-je quelque part??

Pourtant j'en ai fait des requêtes dans ma vie, mille Sabords...

Merci d'avance à celui qui pourra m'aider.
neo53 Messages postés 2 Date d'inscription jeudi 30 septembre 2004 Statut Membre Dernière intervention 23 septembre 2008
10 avril 2006 à 11:05
Salut ce petit calandrier super bien mais comment modofier un evenement ???

Merci de vos reponse parceque je debute et je seche...
team94400 Messages postés 2 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 14 décembre 2005
14 déc. 2005 à 12:06
bonjour a tous !

je tiens a félicité les auteurs de se super script !

aussi je voudrait savoir si il est possible de rendre les dates cliquables pour ouvrir une page html qui contiendrait par exemple une invitation à l'évènement du jour sélectionné ?

je débute en php et ces trop cool des forums comme celui la ;-))
cs_URBA Messages postés 1 Date d'inscription samedi 30 novembre 2002 Statut Membre Dernière intervention 11 décembre 2005
11 déc. 2005 à 17:21
l'orsque je clic sur les changements de mois ou d'années, la fenetre qui s'ouvre j'ai le message impossible d'afficher la page. Je ne comprends plus rien !! Merci de m'aider.
cs_aulo Messages postés 23 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 23 mai 2006
15 mars 2005 à 10:07
Bon, après nombre de tests, voici mon code "final" qui me permet de me servir du calendrier sur toutes mes pages :

$nom_page = $_SERVER["PHP_SELF"];
//if (basename($_SERVER["PHP_SELF"])=="index.php")
//{
echo "<tr>"."
<td colspan='4' class='$css'>"." $labelMois[$mois] "."</td>";
echo "<td colspan='3' align='right' class='$css'>"." $annee "."</td></tr>";
//}
//else
//{
/*echo "<tr>"."
<td colspan='4' class='$css'>"." $labelMois[$mois] "."</td>";
echo "<td colspan='3' align='right' class='$css'>"." $annee "."</td></tr>";
*/
//}

Bien sûr je n'ai pas effacé le code d'origine au cas où la lecture de ce que j'ai fais face bondir qqun !!!
En fait je ne comprends pas bien l'intérêt du javascript:PopupCentrer vu que ça marche nikel sans...
Là je m'adresse à oki972 parceque me connaissant je suis sans doute passé à côté de qqch d'important !!!

Ouala, en tout cas avec ce code (pour le moment j'ai envie de dire !!!)... CA MARCHE !!!
cs_aulo Messages postés 23 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 23 mai 2006
15 mars 2005 à 08:34
Je craque... Je n'ai toujours pas résolu le problème dont je parle plus haut (lorsque je veux utiliser mon calendrier à partir d'une autre page que index.php, les flèches de ce dernier pour naviguer d'un mois à l'autre (pareil pour les années) ne marchent pas... et
je suis sur index.php, tout marche on est d'accord, puis je passe sur une autre page, et je reviens sur index.php, et bien à ce moment là les flèches de mon calendrier ne remarche plus...)
Merci
cs_aulo Messages postés 23 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 23 mai 2006
7 mars 2005 à 18:55
OK je suis donc arrivé à me faire comprendre :o)
oki972 Messages postés 35 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 11 octobre 2007
7 mars 2005 à 18:43
c'est marrant je fais un intranet aussi en ce moment pour ma société et ce sont les memes raisons qui me motivent pour établir un calendrier interessant... J'ai développé une vue par semaine, une mensuelle (détaillée), une annuelle et y a la petite dont on parle qui est sur mes pages principales. Je réfléchis au souci et je te recontacte via phpcs...
cs_aulo Messages postés 23 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 23 mai 2006
7 mars 2005 à 18:24
Alors je m'explique...
En fait je suis en train de faire un intranet (donc rappé pour le lien !) et je voudrais faire une sorte de trame principale, avoir la même en-tête , le même menu, ... et le même calendrier pour chaque page ! c'est pourquoi j'ai utilisé des includes.
include('menu.php'), include('calendar.php'), etc...
Jusque là tout va bien... Tout va bien également lorsque je me connecte sur index.php, mon calendrier marche sans problème (et ce grace à vous tous (merci encore!!!)).
En revanche, lorsque je veux utiliser mon calendrier à partir d'une autre page que index.php, les flèches de ce dernier pour naviguer d'un mois à l'autre (pareil pour les années) ne marchent pas...
C'est pourquoi je pensais qu'en modifiant le lien dont on parle plus haut de façon dynamique mon calendrier marcherait...
Et pour finir, (dernier problème !) je suis sur index.php, tout marche on est d'accord, puis je passe sur une autre page, et je reviens sur index.php, et bien à ce moment mon calendrier ne remarche plus !!!
Peut être que mes deux problèmes sont liés... comme si après avoir planté se dernier ne se réinitialisait pas même après une réactualisation de la page...
Voilà j'espère avoir été assez clair.
En tout cas merci pour ta patience !
oki972 Messages postés 35 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 11 octobre 2007
7 mars 2005 à 16:53
S'il te plai aulo, précise bien ce ki se passe si tu veu kon t'aide. Quand tu m'di ke tt marche pareil...? a vrai dire le premier msg ke t'as laisser g pa tro compris ce ki se passait... Explik un peu en détail ou donne un lien si tu veu kon regarde de loin , ca t'aidera et moi ossi, à mieux te comprendre
cs_aulo Messages postés 23 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 23 mai 2006
7 mars 2005 à 16:42
Je précise que ça fait pareil avec le lien suivant :
oki972 Messages postés 35 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 11 octobre 2007
7 mars 2005 à 16:41
Tente comme ca...
et dis moi ce que ca te met dans la barre d'adresse quand tu l'as exécuté si tu as tjs une erreur
cs_aulo Messages postés 23 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 23 mai 2006
7 mars 2005 à 16:35
Voila ce que je passe en lien :

Je pense que c'est bon non...
oki972 Messages postés 35 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 11 octobre 2007
7 mars 2005 à 15:42
LOool ... euh dis moi tu as bien mis dans le chemin des boutons <a href='$nom_page?mois=...&annee=... ' ?? Et ca marche pas ? et qd tu cliques sur tes boutons ca t'envoie a quelle url ?
cs_aulo Messages postés 23 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 23 mai 2006
7 mars 2005 à 15:33
Merci oki972, j'ai réussi à récupérer l'adresse de ma page dans la variable nom_page. :o)
Tout marche parreil pour la page index.php (un bon début) mais si je passe sur une autre page, les boutons de navigation de mois et années ne marchent pas (donc pas de grosse évolution pour le moment !!!). De même quand je quitte index.php puis que j'y reviens dessus ces mêmes boutons ne marchent plus...
ps : moi une bonne averse de neige de la métropole !!!
oki972 Messages postés 35 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 11 octobre 2007
7 mars 2005 à 14:42
si tu veux réccupérer l'adresse de la page en cours utilse $nom_page = $_SERVER["PHP_SELF"];
et donc en fait dans ces lignes la tu mets $nom_page a la place de index.php .... a vrai dire j'ai pas testé ms je pense ke c ce kil fo faire ;) tien moi o courant ! Je vous envoie un ti bout de soleil des antilles!
cs_aulo Messages postés 23 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 23 mai 2006
7 mars 2005 à 14:26
Bonjour !!!
Je reviens encore à l'attaque...
En fait je voudrais que mon calendrier puisse marcher dans toutes les pages de mon site... en effet je veux le laisser visible tout le temps quelle que soit la page visitée... Je pense savoir ce qu'il faut changer dans le code mais je bloque... En fait, arrêtez moi si je me trompe, mais il faut que je modifie les lignes 104 jusqu'à 108 en modifiant "index.php" par le page où je suis... Le problème c'est que je me sert d'include, et il faudrait donc que je puisse récupérer l'adresse de la page en cours pour la mettre dans une variable...
J'ai pas l'impression d'être très clair là :o(
Merci ...
cs_aulo Messages postés 23 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 23 mai 2006
4 mars 2005 à 21:57
Je te remercie pour ce bout de code...
Je le teste dès que possible...
oki972 Messages postés 35 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 11 octobre 2007
4 mars 2005 à 13:26
G pa précisé, il s'agit de la page calendar.php ... suffit de la remplacer pour voir... Et pour le fonctionnement, patromono faisait remplissait son tableau en meme temps qu'il le le faisait apparaitre en html. La moi, j'ai d'abord parcouru la table j'ai rempli un tableau nommé $info[$date_event] (genre info[1] pour le premier, info[31] pour le dernier jour du mois) et ensuite je fais apparaitre le calendrier en disant tout simplement que si à la date par exemple du 5 info[5] n'est pas vide d'afficher :d c'est bête et méchant... la je suis en train de potasser sur l'affichage à l'année, à la semaine et au jour... pour ce qui est du mois j'ai aussi fait un gros calendrier mensuel ou les éléments apparaissent directement dans les cases.
oki972 Messages postés 35 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 11 octobre 2007
4 mars 2005 à 13:22
Après une bonne nuit de repos aux antilles, le cerveau fonctionne mieux; aulo voilà le bout de codes parfait... avec gestion du multi-event

<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript" type="text/javascript">

var IB=new Object;
var posX=0;posY=0;
var xOffset=-20;yOffset=10;
function AffBulle(texte) {
contenu="<TABLE border=0 cellpadding=2 cellspacing=0 bgcolor='"+IB.ColFond+"'>----, "+texte+"</TD>
</TD></TR></TABLE> ";
var finalPosX=posX-xOffset;
if (finalPosX<0) finalPosX=0;
if (document.layers) {
document.layers["bulle"].document.write(contenu);
document.layers["bulle"].document.close();
document.layers["bulle"].top=posY+yOffset;
document.layers["bulle"].left=finalPosX;
document.layers["bulle"].visibility="show";}
if (document.all) {
//var f=window.event;
//doc=document.body.scrollTop;
bulle.innerHTML=contenu;
document.all["bulle"].style.top=posY+yOffset;
document.all["bulle"].style.left=finalPosX;//f.x-xOffset;
document.all["bulle"].style.visibility="visible";
}
//modif CL 09/2001 - NS6 : celui-ci ne supporte plus document.layers mais document.getElementById
else if (document.getElementById) {
document.getElementById("bulle").innerHTML=contenu;
document.getElementById("bulle").style.top=posY+yOffset;
document.getElementById("bulle").style.left=finalPosX;
document.getElementById("bulle").style.visibility="visible";
}
}
function getMousePos(e) {
if (document.all) {
posX=event.x+document.body.scrollLeft; //modifs CL 09/2001 - IE : regrouper l'évènement
posY=event.y+document.body.scrollTop;
}
else {
posX=e.pageX; //modifs CL 09/2001 - NS6 : celui-ci ne supporte pas e.x et e.y
posY=e.pageY;
}
}
function HideBulle() {
if (document.layers) {document.layers["bulle"].visibility="hide";}
if (document.all) {document.all["bulle"].style.visibility="hidden";}
else if (document.getElementById){document.getElementById("bulle").style.visibility="hidden";}
}

function InitBulle(ColTexte,ColFond,ColContour,NbPixel) {
IB.ColTexte=ColTexte;IB.ColFond=ColFond;IB.ColContour=ColContour;IB.NbPixel=NbPixel;
if (document.layers) {
window.captureEvents(Event.MOUSEMOVE);window.onMouseMove=getMousePos;
document.write("<LAYER name='bulle' top=0 left=0 visibility='hide'></LAYER>");
}
if (document.all) {
document.write("

");
document.onmousemove=getMousePos;
}
//modif CL 09/2001 - NS6 : celui-ci ne supporte plus document.layers mais document.getElementById
else if (document.getElementById) {
document.onmousemove=getMousePos;
document.write("

");
}

}
</SCRIPT>
<SCRIPT LANGUAGE="JavaScript">

function PopupCentrer(page,largeur,hauteur,options) {
var w;
var top=(screen.height-hauteur)/2;
var left=(screen.width-largeur)/2;
window.open(page,"","top="+top+",left="+left+",width="+largeur+",height="+hauteur+","+options);
}
</SCRIPT>
</HEAD>

<SCRIPT language="JavaScript">InitBulle("black","#FFFFFF","black",1);
// InitBulle(couleur de texte, couleur de fond, couleur de contour taille contour)
</SCRIPT>
<?php
/*inclusion des données de connexion */
include ("connexion.php");

function mysql_date($champ)
{
$annee=substr($champ,0,4);
$mois=substr($champ,5,2);
$jour=substr($champ,8,2);
return $jour;
}
function premier_jour_du_mois($mois,$annee)
{
$intPremierJour = date("w",mktime(0,0,0,$mois,1,$annee));
if($intPremierJour 0) $intPremierJour 7; // si c'est un dimanche
return $intPremierJour-1;
}
function nbjour($m,$a)
{
if(($a%4)==0)
{
$fev=29;
}
else
{
$fev=28;
}
$mois = array(0,31,$fev,31,30,31,30,31,31,30,31,30,31);
for($x=1;$x<13;$x++)
{
if($m == $x)
{
return $mois[$x];
}
}
}

function lister_table()
{
$table="events";
$dates = array();
$query = "SELECT * FROM $table";
$result = mysql_query($query);
while ($val = mysql_fetch_array($result))
{
$date_event = mysql_date($val["date_event"]);
echo $date_event;

}
}

function afficheMois($mois, $annee)
{
$tab = getdate();
$jourc = $tab["mday"];
$anneec = $tab["year"];
$moisc = $tab["mon"];
$labelMois = array(" ","Janvier", "Février", "Mars", "Avril",
"Mai", "Juin", "Juillet", "Août", "Septembre",
"Octobre", "Novembre", "Décembre");
$labelJour = array("Lu.","Ma.","Me.","Je.","Ve.","Sa.","Di.");

$nbJours=nbjour($mois,$annee);
$css = "text";
echo "";
echo "<table border=0>\n";

$mp=$mois+1;
$mm=$mois-1;
$ap=$annee+1;
$am=$annee-1;
$acp=$annee;
$acm=$annee;

if($mp==13)
{
$mp=1;
$acp=$acp+1;
if($acp==2038)
{
$acp=1980;
}
}
if($mm==0)
{
$mm=12;
$acm=$acm-1;
if($acm<1980)
{
$acm=2037;
}
}

if($ap>2037){$ap=1980;}
if($am<1980){$am=2037;}

if (basename($_SERVER["PHP_SELF"])=='index.php')
{
echo "----
".
//modifier les liens ci-dessous avec votre chemin
//Pour ouvrir une fenêtre POPUP, Cliquez sur ce lien.

", \".
\" $labelMois[$mois] </td>\";
echo \" ".
"$annee , \";
}
else
{
echo \"----
\".
//modifier les liens ci-dessous avec votre chemin
//Pour ouvrir une fenêtre POPUP, Cliquez sur ce lien.

\"".
" $labelMois[$mois] , \";
echo \" ".
"$annee , \";
}

echo \"----
\";
for ($i = 0; $i < 7; $i++) {

echo \"$labelJour[$i], \";
}
echo \"\n\";

echo \"----
\";
for ($i = 0; $i < premier_jour_du_mois($mois,$annee); $i++)
{
echo \", \";
}
$debut_mois = date(\"Y-m-d\", mktime(0,0,0,$mois,1,$annee));
$fin_mois = date(\"Y-m-d\", mktime(0,0,0,$mois,$nbJours,$annee));

$query = \"SELECT *FROM events where date_event >='$debut_mois' and date_event <='$fin_mois' ORDER BY date_event\";
$result = mysql_query($query);

while ($val = mysql_fetch_object($result))
{
$date_event = mysql_date($val->date_event);
if ($date_event<10) $date_event = substr($date_event,1,1);
$idevent = $val->idevent;
$info[$date_event] .= \"$val->desc_event\".\"
\";
//$info = str_replace(\"
\",\"
\",$info);

}
/********************************/
for ($i = 1; $i <= $nbJours; $i++)
{
if (($i-1 + premier_jour_du_mois($mois,$annee)) % 7 == 0)
{
echo \"\n----
\";// Retour à la ligne chaque Lundi
}
if(($i-1==$jourc-1)&&($annee==$anneec)&&($mois==$moisc))
{
$cssClass = \"datejour\";
$htmltext = \"$i, \";
}
else
{
$cssClass = \"date\";
$htmltext = \"$i, \";
}

if($info[$i]!='')
{
$cssClass = \"date_event\";
//echo $info;
/*$htmltext = \"$i, \";*/
//echo \"$i, \";
$htmltext = \"$i, \";
/* Premier Lien ----------------------------------------------------
*/
}

echo $htmltext;
}
/******************************/
echo \"\";
echo "
</td></tr></table>";
}
?>
</HTML>


Je vous envoie le bonjour de madinina !
cs_aulo Messages postés 23 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 23 mai 2006
4 mars 2005 à 09:36
Bonour,
Oki972, j'ai le même problème que toi pour le multi-event sur le même jour...
Sinon no problème merci...
cs_aulo Messages postés 23 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 23 mai 2006
3 mars 2005 à 22:59
Merci beaucoup, mon message d'erreur n'apparait plus...
En revanche je n'ai pas eu le temps d'essayer plusieurs infos bulles pour la journée... je ne sais pas...

Encore une fois merci à vous ;o)
oki972 Messages postés 35 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 11 octobre 2007
3 mars 2005 à 17:35
je me reprends petite rectification
je fais un echo de înfo pour un jour ou j'ai plusieurs choses a faire j'ai toutes mes infos ... jusqu'à la ligne
$htmltext = "<td align="right" class="$cssClass">$i</td>";
C'est dans cette ligne qu'il y a je pense un probleme...
La fonction Affbulle (info ) m'affiche que le dernier bout de ma chaine.
oki972 Messages postés 35 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 11 octobre 2007
3 mars 2005 à 17:18
Dans php.ini tu mets ";" devant l'instruction -> error_reporting = E_ALL aulo tu vas plus avoir ce souci normalement.
oki972 Messages postés 35 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 11 octobre 2007
3 mars 2005 à 17:15
Moi j'ai le souci suivant , quand j'ai plusieurs taches il ne me les met pas toutes :( et je sais pas pkoi j'ai repris strictement le code de patromo... il doit y avoir un truc... En fait pour etre clair , il ne me met qu'une tache par infobulle et c'est la derniere !! il doit écraser a chaque fois quand il fait cette routine ci :
while ($val = mysql_fetch_array($result))
{
$date_event = mysql_date($val["date_event"]);
$idevent = $val["idevent"];
$info = $val["desc_event"];
$info= str_replace("
","
",$info);
Ligne 234
Si vous avez trouvé le bug aidez moi please! Normalement patromono t'as trouvé sur ton site y a pa ce bug la
oki972 Messages postés 35 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 11 octobre 2007
3 mars 2005 à 17:12
di aulo qd tu as plusieurs taches pour le meme jour tu les a toutes affichées?? Pour ton erreur, attends deux minutes je vais retrouver je sais ce qu'il faut changer... juste une chose tu utilises EasyPhp 1-7?
cs_aulo Messages postés 23 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 23 mai 2006
3 mars 2005 à 16:54
SUPER !!!
Je te remercie... C'est vrai que les info bulles font quand même mieux que mes vieux titres de liens ;o)
En revanche et ça depuis le début, j'ai le message d'erreur suivant :
Notice: Undefined index: mois in c:\hll_net\calendrier\index.php on line 35

Notice: Undefined index: annee in c:\hll_net\calendrier\index.php on line 36

Ca ne me bloque pas mais il apparait au premier chargement de la page et reste tant que je ne bouge pas le mois avec les flèches du calendrier...
Peut-être une petite idée...
Patmomo merci encore pour tout...
cs_patmomo Messages postés 10 Date d'inscription mercredi 22 décembre 2004 Statut Membre Dernière intervention 4 avril 2005
2 mars 2005 à 18:30
oups j'ai un peu cassé le sujet, désolé
cs_patmomo Messages postés 10 Date d'inscription mercredi 22 décembre 2004 Statut Membre Dernière intervention 4 avril 2005
2 mars 2005 à 18:27
voila le script du fichier calendar.php

<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript" type="text/javascript">

var IB=new Object;
var posX=0;posY=0;
var xOffset=-20;yOffset=10;
function AffBulle(texte) {
contenu="<TABLE border=0 cellpadding=2 cellspacing=0 bgcolor='"+IB.ColFond+"'>----, "+texte+"</TD>
</TD></TR></TABLE> ";
var finalPosX=posX-xOffset;
if (finalPosX<0) finalPosX=0;
if (document.layers) {
document.layers["bulle"].document.write(contenu);
document.layers["bulle"].document.close();
document.layers["bulle"].top=posY+yOffset;
document.layers["bulle"].left=finalPosX;
document.layers["bulle"].visibility="show";}
if (document.all) {
//var f=window.event;
//doc=document.body.scrollTop;
bulle.innerHTML=contenu;
document.all["bulle"].style.top=posY+yOffset;
document.all["bulle"].style.left=finalPosX;//f.x-xOffset;
document.all["bulle"].style.visibility="visible";
}
//modif CL 09/2001 - NS6 : celui-ci ne supporte plus document.layers mais document.getElementById
else if (document.getElementById) {
document.getElementById("bulle").innerHTML=contenu;
document.getElementById("bulle").style.top=posY+yOffset;
document.getElementById("bulle").style.left=finalPosX;
document.getElementById("bulle").style.visibility="visible";
}
}
function getMousePos(e) {
if (document.all) {
posX=event.x+document.body.scrollLeft; //modifs CL 09/2001 - IE : regrouper l'évènement
posY=event.y+document.body.scrollTop;
}
else {
posX=e.pageX; //modifs CL 09/2001 - NS6 : celui-ci ne supporte pas e.x et e.y
posY=e.pageY;
}
}
function HideBulle() {
if (document.layers) {document.layers["bulle"].visibility="hide";}
if (document.all) {document.all["bulle"].style.visibility="hidden";}
else if (document.getElementById){document.getElementById("bulle").style.visibility="hidden";}
}

function InitBulle(ColTexte,ColFond,ColContour,NbPixel) {
IB.ColTexte=ColTexte;IB.ColFond=ColFond;IB.ColContour=ColContour;IB.NbPixel=NbPixel;
if (document.layers) {
window.captureEvents(Event.MOUSEMOVE);window.onMouseMove=getMousePos;
document.write("<LAYER name='bulle' top=0 left=0 visibility='hide'></LAYER>");
}
if (document.all) {
document.write("

");
document.onmousemove=getMousePos;
}
//modif CL 09/2001 - NS6 : celui-ci ne supporte plus document.layers mais document.getElementById
else if (document.getElementById) {
document.onmousemove=getMousePos;
document.write("

");
}

}
</SCRIPT>
<SCRIPT LANGUAGE="JavaScript">

function PopupCentrer(page,largeur,hauteur,options) {
var w;
var top=(screen.height-hauteur)/2;
var left=(screen.width-largeur)/2;
window.open(page,"","top="+top+",left="+left+",width="+largeur+",height="+hauteur+","+options);
}
</SCRIPT>
</HEAD>

<SCRIPT language="JavaScript">InitBulle("navy","#FFCC66","orange",1);
// InitBulle(couleur de texte, couleur de fond, couleur de contour taille contour)
</SCRIPT>
<?php
/*inclusion des données de connexion */
include('../forum/common/bddconf.php');
@mysql_connect($BDHOST, $USER, $PASSWORD) or die("impossible de se connecter a la base de donné");
@mysql_select_db("$USEBDD") or die("impossible de se connecter a la base de donné");

function mysql_date($champ)
{
$annee=substr($champ,0,4);
$mois=substr($champ,5,2);
$jour=substr($champ,8,2);
return $jour;
}
function premier_jour_du_mois($mois,$annee)
{
$intPremierJour = date("w",mktime(0,0,0,$mois,1,$annee));
if($intPremierJour 0) $intPremierJour 7; // si c'est un dimanche
return $intPremierJour-1;
}
function nbjour($m,$a)
{
if(($a%4)==0)
{
$fev=29;
}
else
{
$fev=28;
}
$mois = array(0,31,$fev,31,30,31,30,31,31,30,31,30,31);
for($x=1;$x<13;$x++)
{
if($m == $x)
{
return $mois[$x];
}
}
}

function lister_table()
{
$table="events";
$dates = array();
$query = "SELECT * FROM $table";
$result = mysql_query($query);
while ($val = mysql_fetch_array($result))
{
$date_event = mysql_date($val["date_event"]);
echo $date_event;

}
}

function afficheMois($mois, $annee)
{
$tab = getdate();
$jourc = $tab["mday"];
$anneec = $tab["year"];
$moisc = $tab["mon"];
$labelMois = array(" ","Janvier", "Février", "Mars", "Avril",
"Mai", "Juin", "Juillet", "Août", "Septembre",
"Octobre", "Novembre", "Décembre");
$labelJour = array("Lu.","Ma.","Me.","Je.","Ve.","Sa.","Di.");

$nbJours=nbjour($mois,$annee);
$css = "text";

echo "\n\";

$mp=$mois+1;
$mm=$mois-1;
$ap=$annee+1;
$am=$annee-1;
$acp=$annee;
$acm=$annee;

if($mp==13)
{
$mp=1;
$acp=$acp+1;
if($acp==2038)
{
$acp=1980;
}
}
if($mm==0)
{
$mm=12;
$acm=$acm-1;
if($acm<1980)
{
$acm=2037;
}
}

if($ap>2037){$ap=1980;}
if($am<1980){$am=2037;}

if (basename($_SERVER[\"PHP_SELF\"])=='index.php')
{
echo \"----
\".
//modifier les liens ci-dessous avec votre chemin
//Pour ouvrir une fenêtre POPUP, Cliquez sur ce lien.

\"".
" $labelMois[$mois] , \";
echo \" ".
"$annee , \";
}
else
{
echo \"----
\".
//modifier les liens ci-dessous avec votre chemin
//Pour ouvrir une fenêtre POPUP, Cliquez sur ce lien.

\"".
" $labelMois[$mois] , \";
echo \" ".
"$annee , \";
}

echo \"----
\";
for ($i = 0; $i < 7; $i++) {
echo \"$labelJour[$i], \";
}
echo \"\n\";

echo \"----
\";
for ($i = 0; $i < premier_jour_du_mois($mois,$annee); $i++)
{
echo \", \";
}
/********************************/
for ($i = 1; $i <= $nbJours; $i++)
{
if (($i-1 + premier_jour_du_mois($mois,$annee)) % 7 == 0)
{
echo \"\n----
\";// Retour à la ligne chaque Lundi
}
if(($i-1==$jourc-1)&&($annee==$anneec)&&($mois==$moisc))
{
$cssClass = \"datejour\";
$htmltext = \"$i, \";
}
else
{
$cssClass = \"date\";
$htmltext = \"$i, \";
}
/*****************/
$debut_mois = date(\"Y-m-d\", mktime(0,0,0,$mois,1,$annee));
$fin_mois = date(\"Y-m-d\", mktime(0,0,0,$mois,$nbJours,$annee));

$query = \"SELECT *FROM events where date_event >='$debut_mois' and date_event <='$fin_mois' ORDER BY date_event\";
$result = mysql_query($query);
while ($val = mysql_fetch_array($result))
{
$date_event = mysql_date($val[\"date_event\"]);
$idevent = $val[\"idevent\"];
$info = $val[\"desc_event\"];
$info=str_replace(\"
\",\"
\",$info);
if($i==$date_event)
{
$cssClass = \"date_event\";
/* $htmltext = \"$i, \";*/
$htmltext = \"$i, \";
/* Premier Lien ----------------------------------------------------
*/
}
}
echo $htmltext;
}
/******************************/
echo \"\";
echo "
";
}
?>
</HTML>
cs_aulo Messages postés 23 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 23 mai 2006
2 mars 2005 à 17:28
Bonjour,
je suis toujours sur mon problème d'info bulle... Je ne suis pas arrivé à faire mieux qu'afficher les events en titre du lien... C'est mieux que rien mais pas top !
Un petit conseil peut-être ?
cs_aulo Messages postés 23 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 23 mai 2006
1 mars 2005 à 00:00
Bonjour, c'est exactement ce que je voudrais faire...
Peux tu me donner un ou deux conseils...
cs_patmomo Messages postés 10 Date d'inscription mercredi 22 décembre 2004 Statut Membre Dernière intervention 4 avril 2005
28 févr. 2005 à 23:43
tu peux aller voir ce que ça donne ici : http://pall.voile.free.fr/activites/activites.php
cs_aulo Messages postés 23 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 23 mai 2006
28 févr. 2005 à 23:17
Bonjour,
Je viens de lire ce code avec attention et il répond en grande partie à mes attentes... Merci ;o)
En fait je suis novice en php et je voulais arriver a combiner ce code avec l'histoire d'info bulle de patmomo... Pouvez-vous m'éclairer ? merci...
knas74 Messages postés 19 Date d'inscription mardi 29 avril 2003 Statut Membre Dernière intervention 31 janvier 2005
20 févr. 2005 à 20:21
c'est encore mieux !
cs_patmomo Messages postés 10 Date d'inscription mercredi 22 décembre 2004 Statut Membre Dernière intervention 4 avril 2005
20 févr. 2005 à 17:29
Merci pour l'info.
Mais j'ai modifié le script pour faire afficher les infos d'une date dans une info bulle lorsque la souris passe sur la date désirée.

Merci encore
knas74 Messages postés 19 Date d'inscription mardi 29 avril 2003 Statut Membre Dernière intervention 31 janvier 2005
20 févr. 2005 à 15:43
le fichier event.php en fait récupère l'identifiant de l'événement pour l'afficher, il pourrait se réprésenter comme suit :
<?php
include ("connexion.php");
function mysql_date_fr($champ)
{
$annee=substr($champ,0,4);
$mois=substr($champ,5,2);
$jour=substr($champ,8,2);
return $jour."-".$mois."-".$annee;
}
$ref_event = $_GET["ref"];
$query = "SELECT * FROM events where idevent="$ref_event" ";
$result = mysql_query($query);
while ($val = mysql_fetch_array($result))
{
$idevent = $val["idevent"];
$date_event = mysql_date_fr($val["date_event"]);
$desc_event = $val["desc_event"];
echo "le ".$date_event."

";
echo "".$desc_event."

";
}
?>
la fonction mysql_date_fr, affiche simplement la date mysql sous la forme jj-mm-yy
$ref_event récupère à partir du fichier calendar.php l'identifiant de l'événement et l'affiche.
cs_patmomo Messages postés 10 Date d'inscription mercredi 22 décembre 2004 Statut Membre Dernière intervention 4 avril 2005
18 févr. 2005 à 21:35
bonjour,

que met on dans event.php ??
knas74 Messages postés 19 Date d'inscription mardi 29 avril 2003 Statut Membre Dernière intervention 31 janvier 2005
17 févr. 2005 à 14:14
la mise à jour a été faite vous pouvez y jeter un oeil
douardo Messages postés 3 Date d'inscription lundi 31 janvier 2005 Statut Membre Dernière intervention 5 janvier 2007
3 févr. 2005 à 07:48
Heu juste un truc, j'aime bien ton script. Mais il affiche le numéro du jour en tant que date du jour tous les mois et tous les ans!? Or il n'y a qu'une seule date du jour, aujourd'hui. A mettre à jour dans la version 2 ? Rajoute insert.html et insert.php dans le package si tu peux c'est sympa. Mais merci pour ton script : )
cs_meh Messages postés 66 Date d'inscription dimanche 18 août 2002 Statut Membre Dernière intervention 9 juillet 2007
26 janv. 2005 à 23:20
Merci, merci:-) ...sauf que pour des débutants en php - j'apprends en ce moment:)) - , tout n'est pas aussi clair. Bref, eh oui, pour l'instant je ne sais pas encore faire de banque de donnée, LOL. Mais merci pour tout!
knas74 Messages postés 19 Date d'inscription mardi 29 avril 2003 Statut Membre Dernière intervention 31 janvier 2005
26 janv. 2005 à 18:34
easyphp, contient à la fois PHP, Apache(le serveur) et mysql(pour créer tes bases de données), tu lances mysql et de là tu peux créer ta base de données dont laquelle tu créeras ta table events comme dans l'exemple ici, j'espère que cette réponse est satisfaisante
cs_meh Messages postés 66 Date d'inscription dimanche 18 août 2002 Statut Membre Dernière intervention 9 juillet 2007
26 janv. 2005 à 17:14
j'imagine d'EasyPHP
knas74 Messages postés 19 Date d'inscription mardi 29 avril 2003 Statut Membre Dernière intervention 31 janvier 2005
26 janv. 2005 à 15:33
et en ce qui concerne ta base de données?
cs_meh Messages postés 66 Date d'inscription dimanche 18 août 2002 Statut Membre Dernière intervention 9 juillet 2007
26 janv. 2005 à 13:50
paramètres de connexion??

pour le reste, j'ai EasyPHP et ton package d'installés
knas74 Messages postés 19 Date d'inscription mardi 29 avril 2003 Statut Membre Dernière intervention 31 janvier 2005
26 janv. 2005 à 07:54
vérifies tes paramètres de connexion, ils sont pas les mêmes chez toi que chez moi ou vérifie bien si ta base de données ou même ta table existent bien
cs_meh Messages postés 66 Date d'inscription dimanche 18 août 2002 Statut Membre Dernière intervention 9 juillet 2007
26 janv. 2005 à 00:41
Bonjour et merci pour le script. Malheureusement chez moi la page affiche "Impossible de se connecter". Il n'y a que la page html créée selon ton conseil qui s'affiche.
Neill Messages postés 11 Date d'inscription samedi 28 août 2004 Statut Membre Dernière intervention 15 octobre 2006
22 janv. 2005 à 10:07
Ok merci beaucoup knas74 ;) !
knas74 Messages postés 19 Date d'inscription mardi 29 avril 2003 Statut Membre Dernière intervention 31 janvier 2005
21 janv. 2005 à 20:34
tu pourrais créer un fichier html "inserer.html" par exemple avec les zones de formulaires pour insérer la date de l'événement et sa description: ton fichier pourrait contenir ceci:
<html>
<head>
<title>insérer un événement</title>
</head>

<form type="GET" action="http://localhost/insert.php">
<select name="jour">
<option value=01>1</option>
<option value=02>2</option>
<option value=03>3</option>
<option value=04>4</option>
<option value=05>5</option>
<option value=06>6</option>
<option value=07>7</option>
<option value=08>8</option>
<option value=09>9</option>
<option value=10>10</option>
<option value=11>11</option>
<option value=12>12</option>
<option value=13>13</option>
<option value=14>14</option>
<option value=15>15</option>
<option value=16>16</option>
<option value=17>17</option>
<option value=18>18</option>
<option value=19>19</option>
<option value=20>20</option>
<option value=21>21</option>
<option value=22>22</option>
<option value=23>23</option>
<option value=24>24</option>
<option value=25>25</option>
<option value=26>26</option>
<option value=27>27</option>
<option value=29>29</option>
<option value=30>30</option>
<option value=31>31</option>
</select><select name="mois">
<option value=02>Février</option>
<option value=03>Mars</option>
<option value=04>Avril</option>
<option value=05>Mai</option>
<option value=06>Juin</option>
<option value=07>Juillet</option>
<option value=08>Août</option>
<option value=10>Octobre</option>
<option value=11>Novembre</option>
</select><select name="annee">
<option value=2004>2004</option>
<option value=2005>2005</option>
<option value=2006>2006</option>
<option value=2007>2007</option>
<option value=2008>2008</option>
<option value=2009>2009</option>
<option value=2010>2010</option>
</select>

Description:

<textarea name="description" rows="10" cols="25"></textarea>



</form>

</html>

ensuite tu crées ton fichier "insert.php" pour récupérer les données et les ajouter dans la table mysql:
<html>
<head>
<title>Ajout événement</title>
<link href="./styles/text.css" title="compact" rel="stylesheet" type="text/css">
</head>

Ajouter un événement:

<?php
include ("connexion.php");
$j = $_GET["jour"];
$m = $_GET["mois"];
$a = $_GET["annee"];
$desc = $_GET["description"];

if(checkdate($m,$j,$a))
{
$date = $a."-".$m."-".$j;
$sql = "INSERT INTO events (idevent ,date_event, desc_event)VALUES('', '$date', '$desc')";
$result = mysql_query($sql);
echo "événement ajouté";
}
else
{
echo "votre date n\'est pas valide";
}

?>
j'espère que cela pourrait t'aider
Neill Messages postés 11 Date d'inscription samedi 28 août 2004 Statut Membre Dernière intervention 15 octobre 2006
21 janv. 2005 à 19:08
Heu moi aussi je suis un débutant, mais une chose m'intrigue, comment on ajoute un évènement ??
Rejoignez-nous