supinfo
Ouverture de  SUPINFO USA à San Francisco en 2008. Des études en informatique en Californie à un tarif abordable ! Inscrivez-vous dès maintenant !
supinfo
Connexion :

Recherche

  
   Tout| Actus| Télécharger| Comparateur de prix| Dossiers| Forums| Jeux| Google

2 messages
ok

Problème d'affichage de calendrier

Bonjour à tous

Voila je viens de télécharger un bon script qui gère les réservations avec un calendrier mais le problème c'est que la personne qui a réalisé ce script affiche les jours du Dimanche au Samedi avec une organisation en colonnes i.e. les dates correspondantes sont situées en dessous comme beaucoup de calendrier mais moi bien entendu je veux les afficher du Lundi au Dimanche.

En faite il utilise un script PHP qui est comme ceci: D=0;L=1;M=2....

Avec le script actuellement:

D L M M J V S
_______1 2 3
4 5 6 7 8 9 10
.. .. .. .. .. .. ..

Nous voyons ici qu'il y a donc eu une boucle qui a crée 4 cases vide de tableaux car le premier du mois étais un Jeudi, or je voudrais pouvoir afficher le Lundi en premier donc ici, il aurait fallu créer 3 cases vides:

L M M J V S D
_____1 2 3 4
5 6 7 8 9 10 11
.. .. .. .. .. .. ..




Je vous laisse le lien du site ou se situe le script : www.phpcs.com...

Je vous laisse ici la partie du code où se situe mon problème:


Code :
//Détection du 1er et dernier jour du moiS
$nombre_date = mktime(0,0,0, $mois, 1, $an);
$premier_jour = date('w', $nombre_date);
$dernier_jour = 28;
while (checkdate($mois, $dernier_jour + 1, $an))
	{ $dernier_jour++;}

//Affichage de 7 jours du calendrier

for ($i = 0; $i < 7; $i++)
{
	if ($i < $premier_jour)
	{ 
		echo '<td width="60"></td>';
	}
	else
	{
		$ce_jour = ($i+1) - $premier_jour;
		// si c'est un jour reserve on applique le style reserve
		if($tab_jours[$ce_jour])
		{
			echo '<td width="60" class="reserve">';
		// sinon on ne met pas de style
		}
		else
		{
			echo '<td width="60">';
		}
		echo $ce_jour;
		echo '</td>';
	}
}
//affichage du reste du calendrier
$jour_suiv = ($i+1) - $premier_jour;
for ($rangee = 0; $rangee <= 4; $rangee++){
		echo '</tr>';
		echo '<tr align="center" class="numero">';
		for ($i = 0; $i < 7; $i++){
			if($jour_suiv > $dernier_jour){ 
				echo '<td width="60">';
				echo '</td>';
			}else{
				// si c'est un jour reserve on applique le style reserve
				if($tab_jours[$jour_suiv]){
					echo '<td width="60" class="reserve">';
				// sinon on ne met pas de style
				}else{
					echo '<td width="60">';
				}
				//echo $tab_jours[$jour_suiv];
				echo $jour_suiv;
				echo '</td>';
			}
			$jour_suiv++;
		}
}



--J'ai déjà essayé de modifier les boucles sans succès,
--J'ai aussi essayer de modifier le paramaètre w par N ( j'ai ajouté en commentaire dans le code comment fonctionne ces deux paramètres).


Après mes multiples modifications je n'ai fait que modifier le premier jour du mois qui n'étais plus le 1 mais le 3 ou le 2 et aussi ce jour apparaissait toujours en dessous du L. Je n'arrivais plus à réaliser des cases blanches de vides sous les jours qui n'avait pas à etre remplie.
J'ai effectué les modifications suivantes:
-Départ de la boucle for à 1 -> 8 >>> Sans succès.
-Modification du $i remplacé par $i+1 >>> Sans succès.


Merci d avance.
 
 
Voir profilContacter le membre
Tu as essayé de faire -1 sur $premier_jour juste après son calcul ?
 
 
 
2 messages
ok
 
Vous devez être connecté pour écrire un message !
 

 Sujets Similaires:


 
Clubic.com
 
Achetez-facile.com
 
Jeuxvideo.fr
 
neteco.com
 
mobinaute.com