PHP - Mehrdimens. Array
-
Ich bekomm gleich nehn Anfall! Hab schon lange nix mehr in PHP gemacht und brauch jetzt mal schnell ein Mehrdim. Array.
Aber irgendwie klappt die Ausgabe net hier der Code:
<?php //Array für alle LinkOrdner erstellen $MainArray = array(); $SQL ="SELECT * FROM link_ordner WHERE parent_id = $search_id ORDER BY name"; $Result = @mysql_query($SQL, $db); if ($Result) { $zz = 0; while($Row = mysql_fetch_array($Result)) { $MainArray[] = array("id"=>$Row[id], "parent_id"=>$Row[ } } for ($n=0; $n < count($MainArray); $n++) { $list = each($MainArray[$n]); print("<div>\n"); print("<table border=0 width=\"570\">\n"); print("<tr>\n"); print("<td>"); print("<b>"+ $list["ordner"] +"</b>"); print("</td>\n"); print("</tr>\n"); print("</table>\n"); print("</div>\n"); } ?>
Entdeckt vielleicht einer von euch den Fehler. ich bekomme also ordner immer 0 obwohl da ja die Ordnernamen stehn sollten.
-
1.) Man sollte bei SQL-Abfragen möglichst kein * verwenden
2.) Werte wie $search_id sollte man möglichst auch in '' einschließen
3.) Hier fehlt doch am Ende noch was:
MainArray[] = array("id"=>Row[id], "parent_id"=>$Row[
4.) Ich würde bei Arrays den Key in '' setzten
5.) ich finde foreach viel schöner
foreach($MainArray as $list) { // [...] print('<b>'.$list['ordner'].'</b>'); }
6.) In PHP wird als Verkettungsoperator . verwendet, nicht +
-
Danke das mit dem . Operator hat ich glatt vergessen. jetzt gehts auch.