Calendrier evenements
Posté : 16 juin 2014, 12:35
Bonjour je suis entrain d''essayer de réaliser un calendrier d'événements qui est opérationnel,
maitenant j'aimerais que lorsque un visiteur clique sur le lien d'une annonce de ma page ( sortie.php ) à l'aide du lien suivant ( <a href="<?php echo $loisirs['id_loisirs'];?>"> + <div class="annonce_favoris" title="Ajouter à mes favoris"></div></a>) celle ci se rajoute un marqueur sur le calendrier de la page mon_profi et serait afficher sur le coté l'évenement en question.
Afin de vous rendre compte du résultat final ça doit ressembler à ca: http://www.grafikart.fr/demo/PHP/calendar/index.html
J'ai le calendrier mais je n'arrive pas a rajouter l'évenement sur la page mon_profil, merci de votre aide
Voiçi mon code:
page sortie.php:
maitenant j'aimerais que lorsque un visiteur clique sur le lien d'une annonce de ma page ( sortie.php ) à l'aide du lien suivant ( <a href="<?php echo $loisirs['id_loisirs'];?>"> + <div class="annonce_favoris" title="Ajouter à mes favoris"></div></a>) celle ci se rajoute un marqueur sur le calendrier de la page mon_profi et serait afficher sur le coté l'évenement en question.
Afin de vous rendre compte du résultat final ça doit ressembler à ca: http://www.grafikart.fr/demo/PHP/calendar/index.html
J'ai le calendrier mais je n'arrive pas a rajouter l'évenement sur la page mon_profil, merci de votre aide
Voiçi mon code:
page sortie.php:
<div id="bloc_page">
<?php
while($loisirs=mysql_fetch_array($resultat)) { ?>
<?php $date_sortie = DateTime::createFromFormat('Y-m-d', $loisirs['date_debut_sortie']);?>
<?php $date = DateTime::createFromFormat('Y-m-d H:i:s', $loisirs['date_debut_sortie']);?>
<?php $datef = DateTime::createFromFormat('Y-m-d H:i:s', $loisirs['date_fin_sortie']);?>
<?php $diff = floor(($datef->getTimestamp() - $date->getTimestamp())/86400) ;?>
<!-- Annonce -->
<div class="col-md-4 col-sm-6 marg15">
<div class="wrap">
<a href="annonce_zoom.php?id=<?php echo $loisirs['id_loisirs'];?>" >
<?php if(!empty($loisirs['photo'])){?><img class="img-responsive" src="img/annonce/<?php echo $loisirs['photo'];?>" ><?php }?></a>
<h3><?php echo $loisirs['titre']; ?></h3>
<p class="desc"><?php echo substr($loisirs['description'], 0, 150).'...'; ?></p>
<hr>
<div class="utiles">
<p class="pull-right"><?php echo ucfirst($jour[$date->format('N')]); ?> <?php echo $date->format('d'); ?> <?php echo ucfirst($mois[$date->format('n')]); ?> - <?php echo $date->format('Y'); ?></p>
<p class="city">
<i class="fa fa-map-marker"></i> Grenoble
</p>
</div>
<a href="<?php echo $loisirs['id_loisirs'];?>"> + <div class="annonce_favoris" title="Ajouter à mes favoris"></div></a>
<a href="annonce_zoom.php?id=<?php echo $loisirs['id_loisirs'];?>" > <input class="look pull-right" type="button" value="CONTINUER"></a>
</div>
</div>
<!-- End Annonce -->
<?php }?>
</div>
Page mon_profil:
<?php session_start();?>
<?php $page = "profil";?>
<?php
require('date.php');
$date = new Date();
$year = date('Y');
$events = $date->getEvents($year);
$dates = $date->getAll($year);
?>
<div class="periods">
<div class="year"><?php echo $year; ?></div>
<div class="months">
<ul>
<?php foreach ($date->months as $id=>$m): ?>
<li><a href="#" id="linkMonth<?php echo $id+1; ?>"><?php echo utf8_encode(substr(utf8_decode($m),0,3)); ?></a></li>
<?php endforeach; ?>
</ul>
</div>
<div class="clear"></div>
<?php $dates = current($dates); ?>
<?php foreach ($dates as $m=>$days): ?>
<div class="month relative" id="month<?php echo $m; ?>">
<table>
<thead>
<tr>
<?php foreach ($date->days as $d): ?>
<th><?php echo substr($d,0,3); ?></th>
<?php endforeach; ?>
</tr>
</thead>
<tbody>
<tr>
<?php $end = end($days); foreach($days as $d=>$w): ?>
<?php $time = strtotime("$year-$m-$d"); ?>
<?php if($d == 1 && $w != 1): ?>
<td colspan="<?php echo $w-1; ?>" class="padding"></td>
<?php endif; ?>
<td<?php if($time == strtotime(date('Y-m-d'))): ?> class="today" <?php endif; ?>>
<div class="relative">
<div class="day"><?php echo $d; ?></div>
</div>
<div class="daytitle">
<?php echo $date->days[$w-1]; ?> <?php echo $d; ?> <?php echo $date->months[$m-1]; ?>
</div>
<ul class="events">
<?php if(isset($events[$time])): foreach($events[$time] as $e): ?>
<li><?php echo $e; ?></li>
<?php endforeach; endif; ?>
</ul>
</td>
<?php if($w == 7): ?>
</tr><tr>
<?php endif; ?>
<?php endforeach; ?>
<?php if($end != 7): ?>
<td colspan="<?php echo 7-$end; ?>" class="padding"></td>
<?php endif; ?>
</tr>
</tbody>
</table>
</div>
<?php endforeach; ?>
</div>
<div class="clear"></div>
<pre><?php print_r($events); ?></pre>
Page date.php
<?php
class Date{
var $days = array('Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi','Dimanche');
var $months = array('Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre');
function getEvents($year){
global $bdd;
// ici mettre la bonne requete mais je ne vois pas comment faire .......................
$req = $bdd->query(' La requête qui vas bien' );
$r = array();
while($d = $req->fetch(PDO::FETCH_OBJ)){
$r[strtotime($d->date)][$d->id] = $d->title;
}
return $r;
}
function getAll($year){
$r = array();
/**
* Boucle version procédurale
*
$date = strtotime($year.'-01-01');
while(date('Y',$date) <= $year){
// Ce que je veux => $r[ANEEE][MOIS][JOUR] = JOUR DE LA SEMAINE
$y = date('Y',$date);
$m = date('n',$date);
$d = date('j',$date);
$w = str_replace('0','7',date('w',$date));
$r[$y][$m][$d] = $w;
$date = strtotime(date('Y-m-d',$date).' +1 DAY');
}
*
*
*/
$date = new DateTime($year.'-01-01');
while($date->format('Y') <= $year){
// Ce que je veux => $r[ANEEE][MOIS][JOUR] = JOUR DE LA SEMAINE
$y = $date->format('Y');
$m = $date->format('n');
$d = $date->format('j');
$w = str_replace('0','7',$date->format('w'));
$r[$y][$m][$d] = $w;
$date->add(new DateInterval('P1D'));
}
return $r;
}
}