Hallo,
SELECT feld FROM karte WHERE x > '$startx' AND x < 'endx' AND y > '$starty' AND y < '$endy'
SELECT feld, x, y FROM karte WHERE x > '$startx' AND x < '$endx' AND y > '$starty' AND y < '$endy' order by x, y
Wie lese ich das jetzt am besten aus, um auf alle Informationen gut Zugriff zu haben. Am liebsten wäre mir natürlich so etwas wie karte[2][7], die dann die Informationen für das feld 2;7 enthält. Kann mir da jemand helfen?
Wenn der SQL-Query-String in $query steht, dann so:
------------------------------ schnipp -----------------------------
$my_result = mysql_query ($query);
if (!$my_result) {
// fehlerbehandlung
}
$karte = array ();
$aktuell_y = array ();
$aktuell_x = -1;
while ($arr = mysql_fetch_array ($my_result)) {
if ($aktuell_x != $arr["x"]) {
if ($aktuell_x != -1) {
$karte[$aktuell_x] = $aktuell_y;
}
$aktuell_y = array ();
$aktuell_x = $arr["x"];
}
$aktuell_y[$arr["y"]] = $arr["feld"];
}
if ($aktuell_x == -1) { // kein Datensatz
// Fehlerbehandlung
}
$karte[$aktuell_x] = $aktuell_y;
unset ($aktuell_y);
unset ($aktuell_x);
------------------------------ schnapp -----------------------------
Grüße,
Christian