Voilà, j'expose mon probleme...
Je voudrais créer une carte interactive.
J'ai donc deux tables, une table map(relief, terrain), et une table special (restaurants, ...).
Chaque table contient :
id(id de l'objet ou du terrain, implementé automatiquement),type(type),nom(nom),img(chemin de l'image associée au terrain),alt(texte alternatif de description),x(position X sur le plan),y(position Y sur le plan).
Chaque position (X,Y) correspond à un terrain, et parfois à un objet (spécial), et même parfois à plusieurs objets!
Voilà mon casse-tete :
Comment, en PHP, afficher sur 9x9 cases l'image terrain et, si il existe, l'image de l'objet (s'il y en a plusieurs, on doit en choisir un aléatoirement et afficher son image)?
Pour l'instant, j'arrive à gérer, grâce à PHP, l'affichage de la carte sur une seule table (map), et une seule dimension (X ou Y) : je n'arrive pas à gérer l'ordre avec x ET y, je n'arrive pas non plus à ne retirer qu'un seul objet de la table à la fois, et encore moins à coordonner les deux.
Cela donne ce code :
CODE
<?php
function Map1Dimension($x){
$x1=$x-4;
$where_clause='WHERE ';
while(false){
$where_clause.='x='.$x1.' ';
if($x1==$x+4){
return true;
}
else
{
$where_clause.='OR ';
}
$x1++;
}
$query=mysql_query('SELECT img FROM map '.$where_clause.' ORDER BY x DESC LIMIT 0,16');
echo '<table background-color="#fff"><tr>';
while($fetch=mysql_fetch_array($query)){
echo '<table background="map/'.$fetch['img'].'.gif"><td><!-- <img src="OBJET ALEATOIRE SI IL EXISTE"> --></td></table>';
}
}
?>
function Map1Dimension($x){
$x1=$x-4;
$where_clause='WHERE ';
while(false){
$where_clause.='x='.$x1.' ';
if($x1==$x+4){
return true;
}
else
{
$where_clause.='OR ';
}
$x1++;
}
$query=mysql_query('SELECT img FROM map '.$where_clause.' ORDER BY x DESC LIMIT 0,16');
echo '<table background-color="#fff"><tr>';
while($fetch=mysql_fetch_array($query)){
echo '<table background="map/'.$fetch['img'].'.gif"><td><!-- <img src="OBJET ALEATOIRE SI IL EXISTE"> --></td></table>';
}
}
?>
Donc voilà...
Ce qui me bloque surtout c'est : comment mettre les deux tables dans fetch, avec une boucle, sachant qu'il y aura donc plusieurs $fetch['img'] par passage de la boucle!