Flux rss
Collection CommentCaMarche.net
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

[PHP] Tableau de disponibilité

MuronY, le vendredi 18 mai 2007 à 17:16:17
Bonjour a tous le monde : )

Apres des heures et des heures a passé sur un tableau de disponibilité et voyant que je n'y arriverai jamais, je vient demandé de l'aide ^^"
Je m'explique je develloppe en ce moment un site pour des gites de campagnes, il me faut donc confectionner un tableau de disponibilité afin que les internaute puissent voir la disponibilité du gite pour le loué.

J'ai donc essayé de faire un tableai en PHP avec un base de donné et cela donne sa :



-- phpMyAdmin SQL Dump
-- version 2.6.1
-- http://www.phpmyadmin.net
-- 
-- Serveur: localhost
-- Généré le : Jeudi 10 Mai 2007 à 12:02
-- Version du serveur: 4.1.9
-- Version de PHP: 4.3.10
-- 
-- Base de données: `projet`
-- 

-- --------------------------------------------------------

-- 
-- Structure de la table `jour`
-- 

CREATE TABLE `jour` (
  `Jour` char(2) character set latin1 collate latin1_general_cs NOT NULL default '',
  PRIMARY KEY  (`Jour`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

-- 
-- Contenu de la table `jour`
-- 

INSERT INTO `jour` VALUES ('01');
INSERT INTO `jour` VALUES ('02');
INSERT INTO `jour` VALUES ('03');
INSERT INTO `jour` VALUES ('04');
INSERT INTO `jour` VALUES ('05');
INSERT INTO `jour` VALUES ('06');
INSERT INTO `jour` VALUES ('07');
INSERT INTO `jour` VALUES ('08');
INSERT INTO `jour` VALUES ('09');
INSERT INTO `jour` VALUES ('10');
INSERT INTO `jour` VALUES ('12');
INSERT INTO `jour` VALUES ('13');
INSERT INTO `jour` VALUES ('14');
INSERT INTO `jour` VALUES ('15');

-- --------------------------------------------------------

-- 
-- Structure de la table `jourpri`
-- 

CREATE TABLE `jourpri` (
  `JourP` char(2) NOT NULL default '',
  `MoisP` text NOT NULL,
  `JourPri` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

-- 
-- Contenu de la table `jourpri`
-- 

INSERT INTO `jourpri` VALUES ('02', 'Janvier', 'Janvier 02');

-- --------------------------------------------------------

-- 
-- Structure de la table `mois`
-- 

CREATE TABLE `mois` (
  `NumMois` char(2) character set latin1 collate latin1_general_cs NOT NULL default '',
  `NomMois` text character set latin1 collate latin1_general_cs NOT NULL,
  PRIMARY KEY  (`NumMois`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

-- 
-- Contenu de la table `mois`
-- 

INSERT INTO `mois` VALUES ('01', 'Janvier');
INSERT INTO `mois` VALUES ('02', 'Fevrier');
INSERT INTO `mois` VALUES ('03', 'Mars');
INSERT INTO `mois` VALUES ('04', 'Avril');
INSERT INTO `mois` VALUES ('05', 'Mai');
INSERT INTO `mois` VALUES ('06', 'Juin');
INSERT INTO `mois` VALUES ('07', 'Juillet');
INSERT INTO `mois` VALUES ('08', 'Aout');
INSERT INTO `mois` VALUES ('09', 'Septembre');
INSERT INTO `mois` VALUES ('10', 'Octobre');
INSERT INTO `mois` VALUES ('11', 'Novembre');
INSERT INTO `mois` VALUES ('12', 'Decembre');






Voila donc ma base de données et la page en php







<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<TITLE>gites</TITLE>
<META NAME="description" CONTENT="Projet">
<META NAME="keywords" CONTENT="Projet, STG, GSI">
<META NAME="author" CONTENT="Nous ?">
<link href="style.css" rel="stylesheet" type="text/css"> 
</HEAD>
<BODY>


<?php 
include("connexion.php"); 

$requete1="SELECT * FROM jour ORDER BY Jour;"; // Requête 
$resultat1=mysql_query($requete1); // Envoi de la requête 

$requete2="SELECT * FROM mois ORDER BY NumMois;"; // Requête 
$resultat2=mysql_query($requete2); // Envoi de la requête 

$requete4="SELECT MoisP='Janvier', JourP='$requete1' FROM jour, mois, JourPri;" ; // Requête 
$resultat4=mysql_query($requete4); // Envoi de la requête 

$requete3="SELECT JourPri FROM jourpri WHERE MoisP='Janvier' AND JourP=01;"; // Requête 
$resultat3=mysql_query($requete3); // Envoi de la requête 

?>
   

<DIV ALIGN="center">
<B><FONT COLOR="black">Disponibilité du gite</B></FONT><BR><BR>
<TABLE BORDER="1" WIDTH="80%" CELLSPACING="0" BORDERCOLOR="green" CELLPADDING="2">

	<TR>
		<TD BGCOLOR="darkred" ALIGN="center"><FONT COLOR="white" TEXT="white"><B>Jour</B></FONT></TD>
<?php
while ($boucle2 = mysql_fetch_array($resultat2)) 
	{ 
?>
		<TD BGCOLOR="darkred" ALIGN="center" name="<? echo"$boucle2[NomMois]";?>><FONT COLOR="white"><B><? echo "$boucle2[NomMois]";?></B></FONT></TD>

	<? } ?>	
</TR>

<?php
	while ($boucle1 = mysql_fetch_array($resultat1)) 
	{ 
?>


<TR>
	<TD BGCOLOR="darkred" ALIGN="center" name="<? echo"$boucle1[Jour]";?>"><FONT COLOR="white"><B><? echo "$boucle1[Jour]";?></B></FONT></TD>

<? } ?>

	<TD ALIGN="center" name="<? echo"$resultat4";?>"><? if ($resultat4 == $resultat3) {
				echo '<img src="images/imgr.jpg">';
			}
		else {
			echo '<img src="images/imgv.jpg">';
			} ?></TD>

</TR>


	
</BODY>
</HTML>



Le resultat de tout ceci n'est pas trés concluant, essayé de comprendre un peu le code et si vous avez une idée n'hesité pas je suis preneur de tous ^^
Merci d'avance a tous ceux qui vont ce penché sur mon probleme : )
Configuration: Windows XP
Firefox 2.0.0.3
Répondre à MuronY  Signaler ce message aux modérateurs Aller au dernier message

1


  • 1
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
Dalida, le vendredi 18 mai 2007 à 21:06:43
salut Murony,

tu crois vraiment que tu vas trouver des volontaires ?

il faudrait créer les tables, tester la page, trouver l'erreur ou les erreurs et te poster la réponse ?

je ne crois pas que tu trouveras de volontaires.

moi, je sors de table et je n'ai pas envie de me coller une indigestion de code pour quelqu'un d'autre…
-;o)

essaie de décrire ton problème précisément, en nous disant tout aussi précisément où tu bloques (un code ou un message d'erreur, peut être…) et enfin si possible fournis nous une version en ligne.
ensuite je suis sûr que les bonnes volontés afflueront pour essayer de résoudre ton problème !

<edit>fouillouillou !!! je viens de lire le code sql (et oui, malgré ce que j'ai dit…) et c'est loin d'être clair… explique nous ce que tu souhaites mais aussi comment tu t'y es pris… les infos que tu veux stocker dans tes tables par exemple…</edit>

à plus
Il y a surement des pandas pour ne dépendre de rien
Et des pourquoi pas qui durent jusqu'à demain
Répondre à Dalida

2


  • 1
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
MuronY, le vendredi 18 mai 2007 à 22:55:45
alors j'admet comme sa je n'ai pas vraiment detaillé le code mais je m'explique ^^
dans ma page j'ai plusieur boucle unhe pour le jour qui affichera les jour (1,2,3,4,5 etc) une pour les mois que le loueur dispose pour l'anné (janvier, fevrier, mars etc)
et a l'intereiur du tableau des case rouge ou verte suivant si le jour est pris ou libre.
J'ai donc une derniere table pour les jour prit en relation avec la table mois et la table jour.
ensuite le tableau sur la page recapitule les jour de libre et les jour pris de l'anné entiere.
Il n'y a aucune erreur dans le code tou est bon, il manque un boucle le "if isset" que je n'arrive pas a faire : /
je suis pret a remanier mon code c'est a dire decortiqué les mois si cela falicite la création ^^. Je me pencherez donc sur cette idé n'arrivant pas a develloppé celci : /
Répondre à MuronY

3


  • 1
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
 Dalida, le samedi 19 mai 2007 à 11:35:52
bonjour,

ton besoin est de stoker les dates des jours "pris" pour pouvoir ensuite les affichés (sous forme de tableau ou autre). mais ta réponse ne répond pas du tout à cette problématique.

une date doit être stockée au format complet année/moi/jour.
il ne sert à rien de stocker le nom des mois dans une base de données, il y a des fonctions php pour cela.
par ailleurs, l'année civile ne doit pas être stockée non plus. tu afficheras ton tableau en créant un calendrier perpétuel en php uniquement.

tu pourrais le faire ainsi :

table pour les réservations
• un identifiant unique
• l'identifiant de la personne qui réserve
• la date de début de réservation
• la date de fin de réservation

table pour les clients
• un identifiant unique
• nom
• prénom
• les autres infos que tu souhaites…

table de relation client/réservation
• un identifiant unique
• id client
• id réservation

si tu ne veux que les réservations (à mon avis ce serait dommage de se contenter de cela) tu peux utiliser seulement la première table.
tu peux aussi ne coder qu'avec les réservations dans un premier temps puis ajouter la gestion des clients quand tu auras pris les choses en main.

pour le reste, ce n'est que du php (afficher le calendrier, trouver le nom des jours et des mois, déterminer le premier et dernier jour du mois…).
pour afficher les réservations une requête sur la table de réservation en triant par date de début, à chaque réservation tu colores les jours compris dans l'intervalle début-fin.

qu'en penses-tu ?
Il y a surement des pandas pour ne dépendre de rien
Et des pourquoi pas qui durent jusqu'à demain
Répondre à Dalida

Résultats pour [PHP] Tableau de disponibilité

Php tableau associatif, récupérer noms d'élém (Résolu) Bonjour, C'est le printemps et je fais le grand ménage dans un site. Pour l'instant, chaque module de php est affublé d'une fonction de déboguage différente. Chaque fonction de déboguage reçoit en arguement, un tableau associatif... www.commentcamarche.net/forum/affich-5830011-php-tableau-associatif-recuperer-noms-d-elem
[PHP] Tableau dynamique paramétrable (Résolu) Bonjour à tous, je débute dans le PHP et j'ai un problème qui pour vous ne doit pas être bien hallucinant donc après avoir fait plusieurs recherches je me lance :-) Je voudrais pouvoir créer dynamiquement un tableau où l'administrateur... www.commentcamarche.net/forum/affich-2236210-php-tableau-dynamique-parametrable

Résultats pour [PHP] Tableau de disponibilité

Trier un tableau sans utiliser la fonction sortTrier un tableau sans utiliser la fonction sort D'abord on initialise une variable $max avec la 1ère valeur de tableau. Ensuite on va faire une boucle tant que le tableau contient encore des éléments. C'est avec la fonction splice qui a le rôle... www.commentcamarche.net/faq/sujet-7685-trier-un-tableau-sans-utiliser-la-fonction-sort
Décaler les éléments d'un tableau (Rotation) -Récursivité-Voici une procédure récursive qui permet de décaler tous les éléments d’un tableau d’une position à droite à partir de la position p Procedure Decaler (Var t : Tab; p, n : integer); Begin If p www.commentcamarche.net/faq/sujet-8810-decaler-les-elements-d-un-tableau-rotation-recursivite
[PHP] Notice: Undefined index:Si vous utilisez les tableaux $_POST ou $_GET pour récupérer les variables de vos formulaires ou autres, il se peut que vous tombiez sur cette erreur: Notice: Undefined index 'champs du tableau' in 'chemin du fichier php en cours d'execution' on line... www.commentcamarche.net/faq/sujet-1391-php-notice-undefined-index

Résultats pour [PHP] Tableau de disponibilité

[php] tableau dynamique (Résolu)salut je voudrais savoir comment créer un tableau dynamic pour pouvoir gérer les données saisies www.commentcamarche.net/forum/affich-1664960-php-tableau-dynamique
[PHP] tableau remplissage incorrect (Résolu)Bonjour, Je ne comprends pas pourquoi mon tableau $shopping remplace le contenu des "cases" déjà remplies à mesure qu'il remplit les suivantes... Merci d'avance de me remettre sur le bon chemin. Si j'écris ceci: www.commentcamarche.net/forum/affich-3094833-php-tableau-remplissage-incorrect
Pb interface PHP tableaux liste déroulantes (Résolu)Bonjour, j'ai un pb au niveau de mon interface graphique. En effet, pour le cadre de mon stage je dois réaliser une interface en PHP/javascript ou actionscript. Sur cette interface, un agent doit choisir une periode de référence i.e un mois et... www.commentcamarche.net/forum/affich-6309450-pb-interface-php-tableaux-liste-deroulantes