Probleme mit foreach

  • Probleme mit foreach

    Hallo!

    Ich versuche die ganze zeit eine foreachschleife zu schreiben.... bekomme es jedoch nicht hin. In mysql ist das ganze ja mit smarty zusammen ziemlich einfach.

    Hier mal nen code

    Quellcode

    1. $sql3 = "SELECT * FROM hostsysteme";
    2. $result = mysql_query($sql3);
    3. $num = mysql_num_rows($result);
    4. if ($num!="0") {
    5. $x = 0;
    6. while ($row=mysql_fetch_array($result)) {
    7. $hostsysteme_s[$x]['server_id']=$row["'server_id"];
    8. $hostsysteme_s[$x][''server_name']=$row["'server_name"];
    9. $x ++;
    10. }
    11. }else{
    12. $msg='<div class="warning">Derzeit sind keine Hostsysteme vorhanden!</div>';
    13. }
    Alles anzeigen


    Hier der html auszug

    Quellcode

    1. <table width="100%" border="0" bordercolor="#CCCCCC" class="contentbox" cellpadding="0">
    2. <tr bgcolor="#C8C8C8">
    3. <td><strong>ID</strong></td>
    4. <td><strong>Servername</strong></td>
    5. </tr>
    6. {foreach from=$serverlist item=server}
    7. <td><a href="#">{$ hostsysteme_s.server_id}</a></td>
    8. <td><a href="#">{$ hostsysteme_s.server_name}</a></td>
    9. </tr>
    10. {/foreach}
    11. </table>
    Alles anzeigen


    Klapt alles wunderbar. Aber wenn ich eine foreachschleife für die serverliste von teamspeak z.b schreibe scheitere ich. Sitze da seit heute mittag dran. Echt kein schertz.

    Hier nun mal der code wo ich dran scheiter


    Quellcode

    1. $servers = $owl->serverList();
    2. $x = 0;
    3. foreach($servers['data'] as $server) {
    4. $serverlist[$x]['server_id']=$row["virtualserver_id"];
    5. $serverlist[$x]['server_name']=$row["virtualserver_name"];
    6. $x ++;
    7. }



    Quellcode

    1. <table width="100%" border="0" bordercolor="#CCCCCC" class="contentbox" cellpadding="0">
    2. <tr bgcolor="#C8C8C8">
    3. <td><strong>ID</strong></td>
    4. <td><strong>Servername</strong></td>
    5. </tr>
    6. {foreach from=$serverlist item=server}
    7. <td><a href="#">{$serverlist.server_id}</a></td>
    8. <td><a href="#">{$serverlist.server_name}</a></td>
    9. </tr>
    10. {/foreach}
    11. </table>
    Alles anzeigen


    Vieleicht kann mir hier jemand unter die Arme greifen. Hab schon um ehrlich zu sein keine lust mehr. Bin mit meinem latein am ende.

    lg
    Owlchan
  • Nippel schrieb:

    Man beachte Zeichen wie ' oder auch " ;)

    Interessanterweiße ist das wohl der Code der Funktioniert... wie auch immer ;)

    Mal zum Code:

    Quellcode

    1. $servers = $owl->serverList();
    2. $x = 0;
    3. foreach($servers['data'] as $server) {
    4. $serverlist[$x]['server_id']=$row["virtualserver_id"];
    5. $serverlist[$x]['server_name']=$row["virtualserver_name"];
    6. $x ++;
    7. }


    Du nutzt zwar eine foreach-Schleife, greifst aber nie auf die Daten zu über die du iterierst... Stattdessen greifst du hier (wie es mir scheint) auf Variablen zu, die gar nicht existieren.