Hi,
hab ein Code geschrieben, der etwas aus der Datenbank holen soll:
Der soll folgendes machen:
in $objectId steckt ein Array mit mehreren Werten, also mehreren ObjektIds.
Mit foreach wird jede ObjektId durchgearbeitet. Also erst wird alles mit ID = 0 und dann mit ID = 1 durchgearbeitet.
Das Problem liegt darin, dass array $objects zu befüllen. Es soll später so aussehen:
Aber wenn ich print_r mache, kommt nur das:
Es kommt also nur das zweite Objekt ins Array, und ich weiß einfach nicht warum.
Die SQL Abfrage funktioniert, die Variablen kommen auch alle an (hab ich einzeln probiert). Und wenn ich innerhalb der while-Schleife ein print_r() mache, dann werden 2 Arrays ausgegeben (2 Durchläufe) und im ersten Array steht alles fürs erste Objekt und im zweiten Array (in dem ja dann beide Objekte sein sollten) steht nur alles für das zweite Objekt.
Ich versteh einfach nicht, warum es nicht geht.
Ich hoffe, ihr versteht wie ich das meine. Ich blick grad gar nichts mehr^^
Danke schon mal
LG
hab ein Code geschrieben, der etwas aus der Datenbank holen soll:
PHP:
foreach ($objectId as $key => $value) {
// SQL Befehl wird geschrieben
// (SQL Befehl funktioniert auch)
$query = "SELECT objektname,level FROM `Objekte` WHERE `benutzer`='".$this->user."' AND `objektId`='".$value."' AND `planet`='".$planet."'";
// SQL wird ausgeführt
// (funktioniert auch)
$execute = $this->link->query($query) or die("Error in the consult (getUserObjects)..". mysqli_error($this->link));
// Packt die Daten in ein Array $objects
$objects = array();
// Ist im ersten Durchlauf von foreach() 0 und dann 1
$i = $key;
while($row = mysqli_fetch_array($execute)) {
$objects[$i]["objektname"] = $row["objektname"];
$objects[$i]["level"] = $row["level"];
}
}
Der soll folgendes machen:
in $objectId steckt ein Array mit mehreren Werten, also mehreren ObjektIds.
Mit foreach wird jede ObjektId durchgearbeitet. Also erst wird alles mit ID = 0 und dann mit ID = 1 durchgearbeitet.
Das Problem liegt darin, dass array $objects zu befüllen. Es soll später so aussehen:
Code:
$objects[0]["objektname"] = Objekt 1
$objects[0]["level"] = Objektlevel 1
$objects[1]["objektname"] = Objekt 2
$objects[1]["level"] = Objektlevel 2
Aber wenn ich print_r mache, kommt nur das:
Code:
Array ( [1] => Array ( [objektname] => Objekt 2 [level] => Objektlevel 2 ) )
Es kommt also nur das zweite Objekt ins Array, und ich weiß einfach nicht warum.
Die SQL Abfrage funktioniert, die Variablen kommen auch alle an (hab ich einzeln probiert). Und wenn ich innerhalb der while-Schleife ein print_r() mache, dann werden 2 Arrays ausgegeben (2 Durchläufe) und im ersten Array steht alles fürs erste Objekt und im zweiten Array (in dem ja dann beide Objekte sein sollten) steht nur alles für das zweite Objekt.
Ich versteh einfach nicht, warum es nicht geht.
Ich hoffe, ihr versteht wie ich das meine. Ich blick grad gar nichts mehr^^
Danke schon mal
LG