Affichage plan de salle

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Affichage plan de salle

Re: Affichage plan de salle

par Ryle » 26 mai 2011, 17:34

Personnellement j'essayerais de constituer un tableau php à deux dimensions (les lignes et les colonnes) qui pourrais être facilement parcouru pour afficher ton tableau html...

En gros tu charges toutes tes tables, et tu alimentes un tableau en spécifiant la ligne puis la colonne :
  $restaurant[ta_ligne][ta_colonne] = ....;
A partir de là tu peux utiliser deux boucles pour constituer ton tableau (une boucle pour les lignes et une boucle pour les colonnes), et pour chaque "case" tu vérifies s'il existe une correspondance dans le tableau
for ($i=0; $i < $nbLignes; $i++) {
  ... // tr
  for ($j=0; $j < $nbColonnes; $j++) {
    ... // td
    if (isSet($restaurant[$i][$j]))
      ...
  }
}

Re: Affichage plan de salle

par moogli » 26 mai 2011, 16:55

un truc du genre :
<?php
// la requete j'te laisse faire => $sql
$req = mysql_query($sql);
if ($req === false ) {
// message d'erreur qui va bien pour le cas où
echo 'Erreur SQL : '.mysql_error();
}
else {
// tout est ok
echo '<table><tr>';
$col = '';
while($data = mysql_fetch_assoc($req)) {
if (empty($col)) $col = $data['colonne'];
if ($col != $data['colonne']) {
echo '</tr><tr>';
$col = $data['colonne'];
}
echo '<td>',$data['idtable'],'</td>';
}
// pense a fermer le dernier tr
mysql_free_result($req);
}
?>
@+

Re: Affichage plan de salle

par Bisvan2 » 26 mai 2011, 16:43

Alors j'ai essayé effectivement un order by ligne,colonne
Mais mon soucis est la boucle d'affichage des <TR> et <TD> en fonction du changement de ligne et de colonne...
J'arrive pas à trouver le truc...une idée ?

Re: Affichage plan de salle

par moogli » 26 mai 2011, 16:39

salut,


a tu essayer un order by ligne, colonne dans la requete sql ?

ensuite pour l'affichage il faut réaliser la césure en fonction du nombre de table par ligne, pour cela soit tu le connais a l'avance, soit il faut vérifier s'il y a un changement de colonne dans le jeux de données, pour changer de ligne ;)

@+

Affichage plan de salle

par Bisvan2 » 26 mai 2011, 16:22

Bonjour,

J'ai une BDD avec une table "restaurant" qui rassemble le nombre de table du restaurant :
- idresto
- idtable (numéro de la table)
- nbrecouvert
- ligne (numéro de la ligne du tableau html pour affichage)
- colonne (numéro de la colonne du tableau html pour affichage)

Pour afficher sur une page HTML le plan de salle des plus "réels", j'ai divisé chaque salle de restaurant en quadrillage (tableau) avec ligne et colonne.
Chaque table du restaurant à donc une coordonnée "ligne" et une coordonnée "colonne" afin d'être affiché à la bonne place dans un tableau HTML

Par contre je sèche sur la boucle qui va prendre ces données de la BDD.
Auriez vous une idée de comment faire le script d'affichage ?

Merci !!!