eGo Geschrieben 28. Oktober 2003 Geschrieben 28. Oktober 2003 Hi... Ich kenn mich mit Arrays nicht so aus, aber ich brauche es um Datenbankabfragen zu minimieren. Ich möchte das gefüllte Array ("mysql_fetch_array(query-ergebnis)") in ein neues Array schreiben. Leider wird in meinen Script nur der 1. Datensatz in das Array geschrieben. Ich benötige aber alle, welche als Ergebnis des Querys zurückgegeben wurden. Kann mir jemand Hilfe leisten? $ergebnis = mysql_query($sqlbefehl, $serverid); while($fetchnews = mysql_fetch_array($ergebnis)) { $news = array(array( "id"=>$fetchnews[newsid], "title"=>$fetchnews[newstitle], "date"=>$fetchnews[newsdate], "time"=>$fetchnews[newstime], "user"=>$fetchnews[newsuser], "text"=>$fetchnews[newstext] )); } for($x = 0; $x < count($news); $x++) { echo $news[$x][id]; echo $news[$x][title]; echo $news[$x][date]; echo $news[$x][time]; echo $news[$x][user]; echo $news[$x][text]; } [/PHP]
robotto7831a Geschrieben 28. Oktober 2003 Geschrieben 28. Oktober 2003 Hallo, Du überschreibst ja auch jedesmal das Array, so dass nur ein Wert drin stehen kann, wenn ich das jetzt richtig gesehen habe. Schau mal hier. Frank
eGo Geschrieben 28. Oktober 2003 Autor Geschrieben 28. Oktober 2003 Die Funktion nutzt mir nicht wirklich viel, da ein gefülltes Array Voraussetzung dafür ist. Ich hab derweilen mal zwei Versuche gestartet. Die erste ist immer noch zu performancelastig, die zweite aber nicht hübsche Version funktioniert dagegen viel besser. 1. Variante: $ergebnis = mysql_query($sqlbefehl, $serverid); $num_fields = mysql_num_fields($ergebnis); $x = 0; while($fetchnews = mysql_fetch_array($ergebnis)) { for($j = 0; $j < $num_fields; $j++){ $name = mysql_field_name($ergebnis, $j); $news[$x][$name] = $fetchnews[$name]; } $x++; } [/php] 2. Variante [php] $ergebnis = mysql_query($sqlbefehl, $serverid); $x = 0; while($fetchnews = mysql_fetch_array($ergebnis)) { $news[$x][id] = $fetchnews[newsid]; $news[$x][title] = $fetchnews[newstitle]; $news[$x][date] = $fetchnews[newsdate]; $news[$x][time] = $fetchnews[newstime]; $news[$x][text] = $fetchnews[newstext]; $news[$x][details] = $fetchnews[newsdetail]; $news[$x][links] = $fetchnews[newslinks]; $news[$x][user] = $fetchnews[newsuser]; $x++; }
robotto7831a Geschrieben 29. Oktober 2003 Geschrieben 29. Oktober 2003 Mit meiner Funktion geht es auch. Viele Wege führen nach Rom. Frank
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden