Avatar billede RasmusTheR Seniormester
09. april 2016 - 23:40 Der er 3 kommentarer og
1 løsning

Vis database udtræk to gange

Jeg vil gerne have vist mit databaseudtræk to gange, men det kommer kun en gang, jeg bruger nedenstående kode. Er det noget med at jeg har kørt min array til ende?

if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
    echo $row["fornavn"] . "<br>";
    echo $row["efternavn"] . "<br>";
    echo $row["adr"] . "<br><hr>";
    }
}

if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
    echo $row["fornavn"] . "<br>";
    echo $row["efternavn"] . "<br>";
    echo $row["adr"] . "<br><hr>";
    }
}
Avatar billede phpnoob Novice
10. april 2016 - 00:03 #1
Du skal lave et while loop før det kan lade sig gøre som du vil
Avatar billede olsensweb.dk Ekspert
10. april 2016 - 00:14 #2
>Er det noget med at jeg har kørt min array til ende?
kort svar ja.


>while($row = $result->fetch_assoc()) {
her fetch'er du alle dine svar ud.

det du kan gøre er at fetch det ud i et array og udskrive dette 2 gange


alternativt kunne du også kigge på fetch_all
http://php.net/manual/en/mysqli-result.fetch-all.php
http://php.net/manual/en/pdostatement.fetchall.php


så dette

if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
    echo $row["fornavn"] . "<br>";
    echo $row["efternavn"] . "<br>";
    echo $row["adr"] . "<br><hr>";
    }
}
if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
    echo $row["fornavn"] . "<br>";
    echo $row["efternavn"] . "<br>";
    echo $row["adr"] . "<br><hr>";
    }
}



skulle se ca sådan ud:
(utested)

if ($result->num_rows > 0) {
    $liste = $result->fetch_all(MYSQLI_ASSOC);   


    $lng=count($liste);
    for($i=0; $i<$lng; $i++){
        echo $liste[$i]["fornavn"] . "<br>";
        echo $liste[$i]["efternavn"] . "<br>";
        echo $liste[$i]["adr"] . "<br><hr>";
    }

    for($i=0; $i<$lng; $i++){
        echo $liste[$i]["fornavn"] . "<br>";
        echo $liste[$i]["efternavn"] . "<br>";
        echo $liste[$i]["adr"] . "<br><hr>";
    }
}
Avatar billede RasmusTheR Seniormester
10. april 2016 - 10:07 #3
Perfekt :-)

Igen tak for hjælpen Ronols, opret bare et svar.
Avatar billede olsensweb.dk Ekspert
10. april 2016 - 10:18 #4
den første måde jeg snakkede om, skulle du erstatte


if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
    echo $row["fornavn"] . "<br>";
    echo $row["efternavn"] . "<br>";
    echo $row["adr"] . "<br><hr>";
    }
}
if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
    echo $row["fornavn"] . "<br>";
    echo $row["efternavn"] . "<br>";
    echo $row["adr"] . "<br><hr>";
    }
}


med

(utested)
 
if ($result->num_rows > 0) {
    $liste = array();   
    while($row = $result->fetch_assoc()) {
        $liste[] = $row;
    }

   
    $lng=count($liste);
    for($i=0; $i<$lng; $i++){
        echo $liste[$i]["fornavn"] . "<br>";
        echo $liste[$i]["efternavn"] . "<br>";
        echo $liste[$i]["adr"] . "<br><hr>";
    }

    for($i=0; $i<$lng; $i++){
        echo $liste[$i]["fornavn"] . "<br>";
        echo $liste[$i]["efternavn"] . "<br>";
        echo $liste[$i]["adr"] . "<br><hr>";
    }   
}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester