Cette requete sql est elle correcte ?

aldaris -  
 aldaris -
cette requete sql est elle correcte ?
"SELECT photo,pers,id FROM carte WHERE x BETWEEN '$xmin' AND '$max' AND y BETWEEN '$ymin' AND '$ymax' ORDER BY id"

merci

2 réponses

ACNet Messages postés 64 Statut Membre 14
 
Oui cette requête est correcte,


si ce sont les AND qui te gênent niveau visibilité, tu peux faire comme ceci, ca te paraitra peut être plus clair, mais ca reviendra exactement au même :

SELECT photo,pers,id FROM carte WHERE (x BETWEEN '$xmin' AND '$max') AND (y BETWEEN '$ymin' AND '$ymax') ORDER BY id

Stephane
0
aldaris
 
voila tt le script. en fait c'est pour un jeu en ligne, c'est la page ou il y a une carte et on se balade en cliquant sur eds boutons situés sous la carte. . le script sélectionne chaque case concernée de la carte, et les affiche (en principe). là, il n'y a rien... pour simplifier, je voudrais que mysql retourne un tableau multidimensionnel, de sorte que je puisse accéder à n'importe quelle donnée depuis tt le script.. par exemple, les données du champ 'photo' de la troisieme ligne sera repérée par $photo[2], etc..


$result=mysql_query("SELECT photo,pers,id FROM carte WHERE x BETWEEN '$xmin' AND '$max' AND y BETWEEN '$ymin' AND '$ymax' ORDER BY id");

$i=0;
while($tab=mysql_fetch_row($result))
{$photo[$i]=$tab[0];
$pers[$i]=$tab[1];
$i++;
}


et après j'affiche des lignes de 9 cases dans un tableau par :


echo "<table border='0' style='table-layout:auto;border-spacing:0px;border-collapse:collapse;'><tr>";
for($j=0;$j<=8;$j++)
{echo "<td background='imagescarte/",$photo[$j],".JPG'>";
if(!empty($pers[$j])){echo "<img src='imagespers/",$pers[$j],".GIF'>";}
}
echo "</tr><tr>";
for($j=9;$j<=17;$j++)
{echo "<td background='imagescarte/",$photo[$j],".JPG'>";
if(!empty($pers[$j])){echo "<img src='imagespers/",$pers[$j],".GIF'>";}
}
echo "</tr><tr>";


etc....
0