Seite 1 von 1

verschachtelte ausgabe mit dem phpbb template system

Verfasst: 25.10.2005 12:19
von V1tzl1
Hallo ich möchte aus einr Tabell Koordinaten auslesen.
Die Tabelle sieht so aus
GalaxyID|SystemID|PlanetID|LandID

die daraus folgende ausgabe sieht so aus

1 : 1 : 1 : 1
1 : 1 : 2 : 2
1 : 3 : 2 : 2
2 : 1 : 1 : 2
2 : 4 : 2 : 2

jetz möchte ich aber die erste Koordinate der Übersichts halber einmalig oben drüber schreiben, also
Galaxy 1
1 : 1 : 1
1 : 2 : 2
3 : 2 : 2
Galaxy 2
1 : 1 : 2
4 : 2 : 2

mein Code schaut bis jetz so aus
PHP

Code: Alles auswählen

$planiquery = "SELECT * FROM 4_laender WHERE spieler_id = '".$userdata["user_id"]."'";
$planiquery = @mysql_query($planiquery);
if(!$planiquery)
 {
  message_die(CRITICAL_ERROR, "Could not query to table");
 }
while($row = @mysql_fetch_object($planiquery))
 {
  $template->assign_block_vars('laender', array( 
      'GALA' => $row->galaxy_id, 
      'SYS' => $row->system_id,
      'PLANI' => $row->planeten_id,
      'LAND' => $row->land_id 
    ));
 }
TPL

Code: Alles auswählen

<!-- BEGIN laender -->
  {laender.GALA} : {laender.SYS} : {laender.PLANI} : {laender.LAND}<br />
  <!-- END laender -->
Könnt ihr mir sagen, wie ich nun auf meine gewünschte ausgabe komme?

MfG V1tzl1

Verfasst: 25.10.2005 12:39
von kratzer54847
man müsste erstmal nur die Galaxy-ID und deren Namen abfragen, dann innerhalb der While-Schleife eine weitere While-Schleife einrichten, die den Rest abfragt.

Code: Alles auswählen

$firstquery = "SELECT galaxy_id FROM 4_laender";
$firstquery = @mysql_query($firstquery);

if(!$firstquery) 
 { 
  message_die(CRITICAL_ERROR, "Could not query Galaxy IDS"); 
 } 
while($rowgid = @mysql_fetch_object($firstquery)) 
 { 

      $gal_id = $rowgid->galaxy_id;

      $template->assign_block_vars('galaxy', array( 
            'GALID' => $gal_id
      )); 

      $secondquery = "SELECT system_id, planet_id, land_id
                                FROM 4_laender WHERE spieler_id = '".$userdata["user_id"]."'
AND galaxy_id = '$gal_id'";
 
      $secondquery = @mysql_query($secondquery); 
if(!$secondquery) 
 { 
  message_die(CRITICAL_ERROR, "Could not query to table"); 
 } 
        while($row = @mysql_fetch_object($secondquery)) 
        { 
                 $template->assign_block_vars('galaxy.laender', array(
      'GALA' => $row->galaxy_id, 
      'SYS' => $row->system_id, 
      'PLANI' => $row->planeten_id, 
      'LAND' => $row->land_id 
    ));
     } 
 }
im Template:

Code: Alles auswählen

<!-- BEGIN galaxy -->
Galaxy {galaxy.GALID}
<!-- BEGIN laender --> 
{galaxy.laender.SYS} : {galaxy.laender.PLANI} : {galaxy.laender.LAND}<br /> 
<!-- END laender -->
<!--END galaxy -->
hab es aber nicht getestet

Verfasst: 25.10.2005 14:52
von V1tzl1
kratzer54847 hat geschrieben:hab es aber nicht getestet
... das merkt man, ware einiges an Fehlern drin. Ich hab es jetz aber geschaft, also vielen Dank