Bonjour, si quelqu'un pouvait m'aider, j'ai adapté le calendrier grâce à ce superbe tuto, mais je récupère des DateTime dans ma table et non des Date donc, lorsque c'est stocké sous la forme 2013-06-21 00:00:00 dans ma table ça fonctionne, et s'il y a une heure (ex:2013-06-21 01:10:00): rien n'apparait dans le calendrier mais de mon côté, j'ai besoin de stocker aussi les heures donc ma question: Comment prendre en compte les heures, et eventuellement les afficher avec l’événement. Et enfin, comment faire apparaître d'autre données, genre activité, temps de pratique, intensité...
merci pour votre aide, je suis juste bloqué là dessus... le reste marche nikel!!
Salut,
Pas facile de t'aider sans code. S'il ne s'agit que d'affichage pourquoi ne pas découper ta variable "$datetime"(nom au pif) en deux :
$date=substr('$datetime', 0,9);
$time=substr('$datime', 10);
Salut, merci pour le début de réponse:
J'essaye de me dépatouiller mais je bloque tjrs:
Voici quelques details:
ma table "joom_cck_store_form_ma_journe" enregistre des données et des dates au format DateTime (ici la colonne s'appelle "datejour"
j'ai des jours avec sport et d'autres sans, mais avec d'autres données, on voit bien que la requête est bonne et me rapporte toutes les dates ainsi que les sports pratiqués
par contre, dans le calendrier, n'apparaissent que des points et donc des sports pratiqués dans des dates dans lesquelles j'ai 00:00:00 à l'heure... toutes mes données dans lesquelles il y a des heures n'apparaissent pas:
J'AIMERAI AFFICHER LA DATE + L'HEURE à côté des sports et SURTOUT, VOIR TOUS LES SPORTS dans le CALENDRIER...
le script me rapporte tout (voici une partie des array:)
Array
(
[1358413200] => Array
(
[37] => ROLLER
)
[1358636400] => Array
(
[36] => SQUASH
)
[1358874000] => Array
(
[35] => ESCALADE
)
[1358946000] => Array
(
[46] => RPM
)
[1360087200] => Array
(
[114] => RPM
)
<u>ET VOICI LE CODE</u> dans la page date.php et j'ai laissé index.php tel quel...
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 $DB;
global $user_id;
$req = $DB->query('SELECT id, activites, datejour FROM joom_cck_store_form_ma_journe WHERE membre = '.$user_id.' AND YEAR(datejour)='.$year);
$r = array();
/**
* Ce que je veux $r[TIMESTAMP][id] = title
*/
while($d = $req->fetch(PDO::FETCH_OBJ)){
$r[strtotime($d->datejour)]$d->id] = $d->activites;
}
return $r;
}
function getAll($year){
$r = array();
$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;
}
}
merci...
Salut, merci pour le début de réponse:
J'essaye de me dépatouiller mais je bloque tjrs:
Voici quelques details:
ma table "joom_cck_store_form_ma_journe" enregistre des données et des dates au format DateTime (ici la colonne s'appelle "datejour"
j'ai des jours avec sport et d'autres sans, mais avec d'autres données, on voit bien que la requête est bonne et me rapporte toutes les dates ainsi que les sports pratiqués
par contre, dans le calendrier, n'apparaissent que des points et donc des sports pratiqués dans des dates dans lesquelles j'ai 00:00:00 à l'heure... toutes mes données dans lesquelles il y a des heures n'apparaissent pas:
J'AIMERAI AFFICHER LA DATE + L'HEURE à côté des sports et SURTOUT, VOIR TOUS LES SPORTS dans le CALENDRIER...
le script me rapporte tout (voici une partie des array:)
Array
(
[1358413200] => Array
(
[37] => ROLLER
)
[1358636400] => Array
(
[36] => SQUASH
)
[1358874000] => Array
(
[35] => ESCALADE
)
[1358946000] => Array
(
[46] => RPM
)
[1360087200] => Array
(
[114] => RPM
)
<u>ET VOICI LE CODE</u> dans la page date.php et j'ai laissé index.php tel quel...
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 $DB;
global $user_id;
$req = $DB->query('SELECT id, activites, datejour FROM joom_cck_store_form_ma_journe WHERE membre = '.$user_id.' AND YEAR(datejour)='.$year);
$r = array();
/**
* Ce que je veux $r[TIMESTAMP][id] = title
*/
while($d = $req->fetch(PDO::FETCH_OBJ)){
$r[strtotime($d->datejour)]$d->id] = $d->activites;
}
return $r;
}
function getAll($year){
$r = array();
$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;
}
}
merci...