Ankündigung

Einklappen
Keine Ankündigung bisher.

mysqli result mehrmals ausführen

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

  • mysqli result mehrmals ausführen

    Hallo!

    Ich verwende mysqli wo ich ein result mehrmals verwenden möchte. Ich bekomme aber nur einmal ein Ergebnis.

    Mein code sieht wie folgt aus:

    PHP-Code:
    $sql "SELECT * fROM tabelle order by spalte";
                
    $statement $mysqli->prepare($sql);

                
    $statement->execute();

                
    $result $statement->get_result();

    while(
    $row $result->fetch_object())
                {
                  echo 
    "<option value='".$row->spalte."'>".$row->spalte."</option>";
                } 

    Dies funktioniert auch, aber ich möchte jetzt weiter unten wieder die while Schleife mit dem selben Inhalt vom result ausgeben. Da bekomme ich aber leider kein Ergebnis mehr.

    Hoffe es kann mir jemand weiterhelfen.
    Vielen Dank



  • #2
    Dann speicher die die Row's in einer lokalen Variable ab:
    PHP-Code:
    $rows = [];
    while(
    $row $result->fetch_object()) {
        
    $rows $row;

    Danach kannst so oft auf deine Rows zugreifen wie du wills:
    PHP-Code:
    foreach($rows as $row) {
      
    // mach was du willst :)

    Kommentar


    • #3
      Vielen Dank für die Antwort.
      Wenn ich dies versuche bekomme ich beim dem weiteren Male immer nur den letzten Eintrag.
      Wie kann ich dann immer vom ersten Eintrag wieder beginnen?

      Ich hätte auch noch folgende Lösung gefunden:
      Nach einem Durchlauf verwende ich $result->data_seek(0); dann bekomme ich wieder die ganze Liste.
      Danke

      Kommentar


      • #4
        CPCoder hat da einen fiesen Fehler eingestreut.

        PHP-Code:
        $rows = [];
        while(
        $row $result->fetch_object()) {
            
        $rows[] = $row;

        Kommentar


        • #5
          Man kann auch $result->fetch_all() nehmen, da spart man sich die explizite Schleife.

          Kommentar


          • #6
            Zitat von jonas3344 Beitrag anzeigen
            CPCoder hat da einen fiesen Fehler eingestreut.

            PHP-Code:
            $rows = [];
            while(
            $row $result->fetch_object()) {
            $rows[] = $row;

            Ups, sollte das nächste Mal nochmal mein Posting lesen vorm abschicken. Danke dass du darauf aufmerksam gemacht hast!

            Kommentar

            Lädt...
            X