Templates mit arrays

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Templates mit arrays

    Mein PHP Code sieht so aus:

    PHP-Code:
    $tpl = new Template('index_body.tpl');

    $result1 mysql_query("SELECT held, klasse, volk FROM w_helden ORDER BY held");
    $helden = array();
    while (
    $row1 mysql_fetch_assoc($result1))  {    $helden[] = $row1;     }

    print_r($helden);

    $tplhelden $tpl->fetchBlock('helden');
    $array count($helden);
    for(
    $i=0;$i<$array;$i++)
    {
      
    $tplhelden->assign('held'$helden[$i][held]); // Zeile 17
      
    $tplhelden->assign('klasse'$helden[$i][klasse]);
      
    $tplverein->assign('volk'$helden[$i][volk]);
      
    $tpl->assign('helden'$tplhelden);
      
    $tplhelden->reset();
    }

    $tpl->out(); 
    Bei Print_r kommt das raus:

    Array ( [0] => Array ( [held] => Aliena [klasse] => Magier [volk] => Tirem-Ag Elf ) [1] => Array ( [held] => Chief_Justice [klasse] => Schütze [volk] => Bergzwerg ))
    Es geht im dem Code um die zeilen 17-19! Ich frag mich wie ich das die held, klasse und das volk in diesem mehrdimensionaligen Array ansprechen kann.........

  • #2
    Re: Templates mit arrays

    Original geschrieben von Tarlar

    Array (
    [0] => Array (
    [held] => Aliena
    [klasse] => Magier
    [volk] => Tirem-Ag Elf
    )
    )
    Ich frag mich wie ich das die held, klasse und das volk in diesem mehrdimensionaligen Array ansprechen kann.........
    PHP-Code:
    echo $array[0]['held']; // Aliena
    echo $array[0]['klasse']; // Magier 
    BTW: Woher sollen wir wissen, welche Zeilen das sein solln?
    [color=black] Important: alt bei <img> ist immer erforderlich · Strings richtig trennen/verbinden · Kiddie-Code hat keine Chance[/color]

    Kommentar


    • #3
      Re: Re: Templates mit arrays

      Original geschrieben von tomstig
      BTW: Woher sollen wir wissen, welche Zeilen das sein solln?
      Vielleicht anhand seines Quellcodes?
      Ich denke, also bin ich. - Einige sind trotzdem...

      Kommentar


      • #4
        PHP-Code:
        $tpl = new Template('index_body.tpl');

        $result1 mysql_query("SELECT held, klasse, volk FROM w_helden ORDER BY held");
        $helden = array();
        while (
        $row1 mysql_fetch_assoc($result1))  {    $helden[] = $row1;     }

        //print_r($helden);

        $tplhelden $tpl->fetchBlock('helden');
        $array count($helden);
        echo 
        $helden[0]['held']; // Zeile 15
        for($i=0;$i<$array;$i++);
        {
          echo 
        $helden[$i]['held']; // Zeile 18
          
        $tplhelden->assign('held'$helden[$i]['held']);
          
        $tplhelden->assign('klasse'$helden[$i]['klasse']);
          
        $tplverein->assign('volk'$helden[$i]['volk']);
          
        $tpl->assign('helden'$tplhelden);
          
        $tplhelden->reset();
        }

        $tpl->out(); 
        Jetzt hab ich zum Testen meinen Code umgeschrieben.
        In Zeile 15 wird wie es sollte Aliena ausgegeben, aber in Zeile 18 werden nicht alle Werte ausgegeben. Warum?

        Kommentar


        • #5
          Was heisst "nicht alle"? Gibt er welche aus und andere nicht oder gibt er gar nix aus? Was steht denn in $array?
          mens agitat molem

          Kommentar


          • #6
            In der for-Schleife gibt er GAR NICHTS aus.

            Kommentar


            • #7
              Und was steht in $array? Wahrscheins 0...
              mens agitat molem

              Kommentar


              • #8
                Nein, da steht 2.

                Kommentar


                • #9
                  Was gibt denn ein

                  PHP-Code:
                  print_r($helden); 
                  aus?
                  mens agitat molem

                  Kommentar


                  • #10
                    Das steht in meinem ersten Post

                    Kommentar


                    • #11
                      Original geschrieben von Tarlar
                      PHP-Code:
                      for($i=0;$i<$array;$i++); 
                      Das letzte Semikolon beendet den "Anweisungsblock" der for-Schleife...
                      Ich denke, also bin ich. - Einige sind trotzdem...

                      Kommentar


                      • #12
                        Ups.

                        Hm. Seltensam. Schreib doch deine for-Schleife mal so:

                        PHP-Code:
                        for($i 0$i count($helden); $i++) 
                        Sollte zwar das gleiche Ergebnis bringen aber man weiss ja nie...
                        mens agitat molem

                        Kommentar

                        Lädt...
                        X