JulioDelphi
Messages postés2226Date d'inscriptiondimanche 5 octobre 2003StatutMembreDernière intervention18 novembre 201014 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és57Date d'inscriptionsamedi 11 janvier 2003StatutMembreDernière intervention30 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és1Date d'inscriptionlundi 16 octobre 2006StatutMembreDerniè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és2Date d'inscriptionmardi 19 août 2003StatutMembreDernière intervention20 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és4Date d'inscriptionmardi 10 août 2004StatutMembreDernière intervention17 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és4Date d'inscriptionmardi 10 août 2004StatutMembreDernière intervention17 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és4Date d'inscriptionmardi 10 août 2004StatutMembreDernière intervention17 juin 2007 16 juin 2007 à 18:50
Croquette007
Messages postés35Date d'inscriptiondimanche 29 mai 2005StatutMembreDernière intervention13 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és4Date d'inscriptionmardi 10 août 2004StatutMembreDernière intervention17 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és1Date d'inscriptionvendredi 20 avril 2007StatutMembreDernière intervention13 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és35Date d'inscriptiondimanche 29 mai 2005StatutMembreDernière intervention13 mars 2007 18 mai 2007 à 13:26
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és35Date d'inscriptiondimanche 29 mai 2005StatutMembreDernière intervention13 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és1Date d'inscriptionvendredi 4 mai 2007StatutMembreDerniè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és19Date d'inscriptiondimanche 12 novembre 2000StatutMembreDernière intervention27 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és2Date d'inscriptionjeudi 30 septembre 2004StatutMembreDernière intervention23 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és2Date d'inscriptionmercredi 24 novembre 2004StatutMembreDernière intervention14 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és1Date d'inscriptionsamedi 30 novembre 2002StatutMembreDernière intervention11 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és23Date d'inscriptionvendredi 25 février 2005StatutMembreDernière intervention23 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 :
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és23Date d'inscriptionvendredi 25 février 2005StatutMembreDernière intervention23 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és23Date d'inscriptionvendredi 25 février 2005StatutMembreDernière intervention23 mai 2006 7 mars 2005 à 18:55
OK je suis donc arrivé à me faire comprendre :o)
oki972
Messages postés35Date d'inscriptionsamedi 1 novembre 2003StatutMembreDernière intervention11 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és23Date d'inscriptionvendredi 25 février 2005StatutMembreDernière intervention23 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és35Date d'inscriptionsamedi 1 novembre 2003StatutMembreDernière intervention11 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és23Date d'inscriptionvendredi 25 février 2005StatutMembreDernière intervention23 mai 2006 7 mars 2005 à 16:42
Je précise que ça fait pareil avec le lien suivant :
oki972
Messages postés35Date d'inscriptionsamedi 1 novembre 2003StatutMembreDernière intervention11 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és23Date d'inscriptionvendredi 25 février 2005StatutMembreDernière intervention23 mai 2006 7 mars 2005 à 16:35
Voila ce que je passe en lien :
Je pense que c'est bon non...
oki972
Messages postés35Date d'inscriptionsamedi 1 novembre 2003StatutMembreDernière intervention11 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és23Date d'inscriptionvendredi 25 février 2005StatutMembreDernière intervention23 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és35Date d'inscriptionsamedi 1 novembre 2003StatutMembreDernière intervention11 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és23Date d'inscriptionvendredi 25 février 2005StatutMembreDernière intervention23 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és23Date d'inscriptionvendredi 25 février 2005StatutMembreDernière intervention23 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és35Date d'inscriptionsamedi 1 novembre 2003StatutMembreDernière intervention11 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és35Date d'inscriptionsamedi 1 novembre 2003StatutMembreDernière intervention11 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
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;
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.
cs_aulo
Messages postés23Date d'inscriptionvendredi 25 février 2005StatutMembreDernière intervention23 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és23Date d'inscriptionvendredi 25 février 2005StatutMembreDernière intervention23 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és35Date d'inscriptionsamedi 1 novembre 2003StatutMembreDernière intervention11 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és35Date d'inscriptionsamedi 1 novembre 2003StatutMembreDernière intervention11 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és35Date d'inscriptionsamedi 1 novembre 2003StatutMembreDernière intervention11 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és35Date d'inscriptionsamedi 1 novembre 2003StatutMembreDernière intervention11 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és23Date d'inscriptionvendredi 25 février 2005StatutMembreDernière intervention23 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és10Date d'inscriptionmercredi 22 décembre 2004StatutMembreDernière intervention 4 avril 2005 2 mars 2005 à 18:30
oups j'ai un peu cassé le sujet, désolé
cs_patmomo
Messages postés10Date d'inscriptionmercredi 22 décembre 2004StatutMembreDernière intervention 4 avril 2005 2 mars 2005 à 18:27
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;
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.
cs_aulo
Messages postés23Date d'inscriptionvendredi 25 février 2005StatutMembreDernière intervention23 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és23Date d'inscriptionvendredi 25 février 2005StatutMembreDernière intervention23 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és10Date d'inscriptionmercredi 22 décembre 2004StatutMembreDernière intervention 4 avril 2005 28 févr. 2005 à 23:43
cs_aulo
Messages postés23Date d'inscriptionvendredi 25 février 2005StatutMembreDernière intervention23 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és19Date d'inscriptionmardi 29 avril 2003StatutMembreDernière intervention31 janvier 2005 20 févr. 2005 à 20:21
c'est encore mieux !
cs_patmomo
Messages postés10Date d'inscriptionmercredi 22 décembre 2004StatutMembreDerniè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és19Date d'inscriptionmardi 29 avril 2003StatutMembreDernière intervention31 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és10Date d'inscriptionmercredi 22 décembre 2004StatutMembreDernière intervention 4 avril 2005 18 févr. 2005 à 21:35
bonjour,
que met on dans event.php ??
knas74
Messages postés19Date d'inscriptionmardi 29 avril 2003StatutMembreDernière intervention31 janvier 2005 17 févr. 2005 à 14:14
la mise à jour a été faite vous pouvez y jeter un oeil
douardo
Messages postés3Date d'inscriptionlundi 31 janvier 2005StatutMembreDerniè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és66Date d'inscriptiondimanche 18 août 2002StatutMembreDerniè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és19Date d'inscriptionmardi 29 avril 2003StatutMembreDernière intervention31 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és66Date d'inscriptiondimanche 18 août 2002StatutMembreDernière intervention 9 juillet 2007 26 janv. 2005 à 17:14
j'imagine d'EasyPHP
knas74
Messages postés19Date d'inscriptionmardi 29 avril 2003StatutMembreDernière intervention31 janvier 2005 26 janv. 2005 à 15:33
et en ce qui concerne ta base de données?
cs_meh
Messages postés66Date d'inscriptiondimanche 18 août 2002StatutMembreDerniè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és19Date d'inscriptionmardi 29 avril 2003StatutMembreDernière intervention31 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és66Date d'inscriptiondimanche 18 août 2002StatutMembreDerniè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és11Date d'inscriptionsamedi 28 août 2004StatutMembreDernière intervention15 octobre 2006 22 janv. 2005 à 10:07
Ok merci beaucoup knas74 ;) !
knas74
Messages postés19Date d'inscriptionmardi 29 avril 2003StatutMembreDernière intervention31 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>
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>
28 déc. 2007 à 12:01
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 ...
12 août 2007 à 11:22
8 août 2007 à 16:14
20 juin 2007 à 20:30
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.
17 juin 2007 à 08:03
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 ?
16 juin 2007 à 18:51
dans php admin
Aucune clef n'est définie !
16 juin 2007 à 18:50
voici son url http://mcardenne.ovh.org/index.php
16 juin 2007 à 18:43
champ 1: idevent type: int valeur: 11
champ 2: date_event type: date
champ 3: desc_event type: text
dis nous si ça marche ;)
16 juin 2007 à 18:31
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
13 juin 2007 à 15:40
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!
18 mai 2007 à 13:26
<?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!
18 mai 2007 à 11:41
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.
6 mai 2007 à 10:30
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 ^^
5 mai 2006 à 08:57
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.
10 avril 2006 à 11:05
Merci de vos reponse parceque je debute et je seche...
14 déc. 2005 à 12:06
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 ;-))
11 déc. 2005 à 17:21
15 mars 2005 à 10:07
$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 !!!
15 mars 2005 à 08:34
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
7 mars 2005 à 18:55
7 mars 2005 à 18:43
7 mars 2005 à 18:24
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 !
7 mars 2005 à 16:53
7 mars 2005 à 16:42
7 mars 2005 à 16:41
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
7 mars 2005 à 16:35
Je pense que c'est bon non...
7 mars 2005 à 15:42
7 mars 2005 à 15:33
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 !!!
7 mars 2005 à 14:42
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!
7 mars 2005 à 14:26
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 ...
4 mars 2005 à 21:57
Je le teste dès que possible...
4 mars 2005 à 13:26
4 mars 2005 à 13:22
<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 !
4 mars 2005 à 09:36
Oki972, j'ai le même problème que toi pour le multi-event sur le même jour...
Sinon no problème merci...
3 mars 2005 à 22:59
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)
3 mars 2005 à 17:35
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.
3 mars 2005 à 17:18
3 mars 2005 à 17:15
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
3 mars 2005 à 17:12
3 mars 2005 à 16:54
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...
2 mars 2005 à 18:30
2 mars 2005 à 18:27
<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>
2 mars 2005 à 17:28
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 ?
1 mars 2005 à 00:00
Peux tu me donner un ou deux conseils...
28 févr. 2005 à 23:43
28 févr. 2005 à 23:17
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...
20 févr. 2005 à 20:21
20 févr. 2005 à 17:29
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
20 févr. 2005 à 15:43
<?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.
18 févr. 2005 à 21:35
que met on dans event.php ??
17 févr. 2005 à 14:14
3 févr. 2005 à 07:48
26 janv. 2005 à 23:20
26 janv. 2005 à 18:34
26 janv. 2005 à 17:14
26 janv. 2005 à 15:33
26 janv. 2005 à 13:50
pour le reste, j'ai EasyPHP et ton package d'installés
26 janv. 2005 à 07:54
26 janv. 2005 à 00:41
22 janv. 2005 à 10:07
21 janv. 2005 à 20:34
<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
21 janv. 2005 à 19:08