Merci !
J’ai fais à peu prés la solution que vous m’avez donnée.
J’ai une fonction JavaScript qui permet de me lancer une fenêtre popup et je lui passe en argument le jour,l’id et ca va a peu près.
je vous joint le code si vous avez des suggestions ou pour mieux voir ou si certaines personnes veulent faire la même chose.
Par contre je n’ai pas fait de boucle sur colonne/ligne comme tu m’a dit car je ne vois pas du tout comment faire…
Je galère un peu a faire des colonnes et lignes avec les
function calendrier2()
{
if(isset($_GET["lundi"])) // Une semaine précise est demandée
{
$ts = $_GET["lundi"];
}
else //On prendra la semaine d'aujourd'hui
{
$day = (date('w') - 1); //Jour dans la semaine... Lundi = 0
$diff = $day * 86400; //Différence en secondes par rapport au lundi - exemple : mercredi(2) * 86400
$ts = (mktime() - $diff); //On récupère le TimeStamp du lundi
}
//Initialisation des variables
$jour = date('d',$ts); // Jour en cours '01'
$mois = date('m',$ts); // Mois en cours '01'
$annee = date('Y',$ts); // Année en cours '2000'
$week = date('W', $ts); //Semaine en cours '01'
$avant = $ts - 604800; //TimeStamp Lundi précédant = le ts du lundi - 60sec * 60min * 24h * 7jours
$apres = $ts + 604800; //TimeStamp Lundi suivant = le ts du lundi + 60sec * 60min * 24h * 7jours
echo '<div align="center">';
echo '<a href="calendrier.php?lundi='.$avant.'"> Semaines Precedentes </a> - Semaine n°'.$week.' - <a href="calendrier.php?lundi='.$apres.'"> Semaines Suivantes </a>';
// On affecte a la page la variable "lundi" en lui donnant comme valeur le timestamp de la semaine d'avant "$avant" ou de la semaine d'après "$apres"
echo '</div>';
$jours = array(1 => "Lundi",2 => "Mardi",3 => "Mercredi",4 => "Jeudi",5 => "Vendredi",6 => "Samedi",7 => "Dimanche");
echo '</tr><tr><td width="60" > Jours/<br>Heures</td>';
for($i=1;$i<8;$i++) //Pour chaque jour de la semaine... Lundi = 1
{
if( ($i == date('w')) && ($week == date('W')) ) //S'il s'agit d'aujourd'hui, on met le jour en jaune (jour && semaine)
{
echo '<td align="center" style="background-color:yellow"; width="14%" colspan="4"><b>'.$jours[$i].' '.date('d M Y', $ts).'</b></td>';
}
else // Sinon si c'est pas aujourd'hui on met le jour sans couleur
{
echo '<td align="center" width="14%" colspan="4"><b>'.$jours[$i].' '.date('d M Y', $ts).'</b></td>';
}
$ts = $ts + 86400; //On passe au jour suivant car un jour = 60sec * 60min * 24h
}
echo '</tr>';
echo '<tr>';
for($heure=0;$heure<24;$heure++) // Boucle pour afficher les heures
{
echo '<td>'.($heure).'h00</td>'; // Affiche l'heure pleine
for($j=0;$j<7;$j++) // Affiche les cases à séléctionner
{
$time = $heure."h00";
echo '<td align="center" bgcolor="red" onMousedown="javascript:alert(\''.$time.'\')" ></td> <td align="center" bgcolor="green"> </td> <td align="center" bgcolor="blue"> </td> <td align="center" bgcolor="yellow"> </td>';
}
echo '</tr><tr>';
echo '<td >'.($heure).'h30</td>'; // Affiche l'heure et demie
for($j=0;$j<7;$j++) // Affiche les cases à séléctionner
{
$time = $heure."h30";
$ce_jour = mktime(0, 0, 0, $mois, $jour, $annee);
$ce_jour = $ce_jour+($j * 86400);
echo '<td align="center" bgcolor="red" OnClick="javascript:info(\'1\',\''.$time.'\',\''.$ce_jour.'\')" ></td></td> <td align="center" bgcolor="green"> </td><td align="center" OnClick="info()" bgcolor="blue" ></td> <td align="center" bgcolor="yellow"> </td>';
// echo '<td align="center" bgcolor="red" OnClick="javascript:info(\'rouge\')" ></td></td> <td align="center" bgcolor="green"> </td><td align="center" OnClick="info()" bgcolor="blue" ></td> <td align="center" bgcolor="yellow"> </td>';
}
echo '</tr><tr>';
}
echo '</tr></table>';
echo '<div align="center">';
echo '<div align="center"><a href="calendrier.php?lundi='.$avant.'"> Semaines Precedentes </a> - Semaine n°'.$week.' - <a href="calendrier.php?lundi='.$apres.'"> Semaines Suivantes </a>';
// On affecte a la page la variable "lundi" en lui donnant comme valeur le timestamp de la semaine d'avant "$avant" ou de la semaine d'après "$apres"
echo '</div>';
}
?>
<script>
function info(i,t,j)
{
var id = i;
var time = t;
var jour = j;
alert('id : '+id+', time : '+time+', jour : '+jour);
//window.open("info.php?bouton=test", "Informations rouge"," directories=no, location=no, width=500, height=300");
}
</script>
En tout cas grand merci de m’avoir répondu!
Napalm
|