phoboz
Goto Top

PHP-Array auf einzelne Werte zugreifen. Funktioniert nicht.

Hallo,

ich glaube das ist wieder leicht für Euch, da ihr mir heute morgen schon super geholfen habt und ich beim googeln nur Lösungen finde die nicht funktionieren, frage ich hier nochmal nach.

$sql = "Select username from Tabelle where Gruppe = '1'";  
       $abfrage = mysqli_query($db,$sql);
       
      while($gruppe_1 = mysqli_fetch_array($abfrage))
       {
       echo $gruppe_1['username']."<br>";  
       }
//funktioniert gibt mir alle User aus

was ist wenn ich jetzt einzelnd auf die User zugereifen möchte
echo $gruppe_1; //funktioniert nicht, es wird nichts angezeigt

Kommt es vielleicht deswegen weil die variable gruppe_1 nur in der while existiert? wenn ich es so mache:

$sql = "Select username from Tabelle where Gruppe = '1'";  
       $abfrage = mysqli_query($db,$sql);
       $gruppe_1 = mysqli_fetch_array($abfrage);
      while($gruppe_1 = mysqli_fetch_array($abfrage))
      {
       echo $gruppe_1['username']."<br>";  
       }
      echo $gruppe_1;

Gibt er mir die Userliste aus, allerdings fehlt der erste Eintrag und da wo er den ersten Eintrag unter Liste schreiben sollte wird nichts angezeigt.


Grüße

Phobozz

Content-Key: 221880

Url: https://administrator.de/contentid/221880

Ausgedruckt am: 28.03.2024 um 17:03 Uhr

Mitglied: nxclass
nxclass 13.11.2013 aktualisiert um 12:40:34 Uhr
Goto Top
... in deiner WHILE schleife wird $gruppe_1 immer überschrieben.
Ich nehme an das du mit $gruppe versuchts auf den ersten Datensatz zuzugreifen ?

$gruppe = array();
while ($row = mysqli_fetch_array($abfrage)) {
  $gruppe = $row;
  echo $row['username'];  
}
echo $gruppe['username'];  
... auf diese weise hältst du dann alle Ergebnisse der SQL Abfrage in dem Array $gruppe - das kann u.U. aber viel Speicher belegen.
Mitglied: SlainteMhath
SlainteMhath 13.11.2013 aktualisiert um 12:39:25 Uhr
Goto Top
Moin,

mysqli_fetch_array ruft immer nur dne nächsten anstehenden Record aus dem Objekt ab.
Wenn du im nachhinein auf die Datenzugreifen willst, musst du die records in einem eigenen Array speichern

etwa so:
 while($gruppe_1 = mysqli_fetch_array($abfrage)) 
      { 
       $alle=$gruppe_1;
       echo $gruppe_1['username']."<br>";   
       } 
      echo $alle['username'];  

lg,
Slainte

/EDIT: Mist, zulangsam .)
Mitglied: Phoboz
Phoboz 13.11.2013 um 13:23:35 Uhr
Goto Top
Super,

danke Ihr beiden. jetzt kann ich weitermachen. Manchmal fehlen mir leider die handwerklichen sachen um weiterzukommen :D
als ich das mit dem Überschreiben gelesen hab, wurd mir das auch klar, hätte eigentlich selbst drauf kommen müssen face-smile

VIELEN DANK!