Julez
Julez

Reputation: 1369

SQL request with a while loop then a SQL request again in a while loop

I did a SQL request with php and everything works fine, but when i do a SQL request inside the while loop i only get 1 results of the first 'kenmerk'.

// Per kenmerk
$query = "SELECT kenmerk FROM kenmerken WHERE user_id = ".$user."";
$result = mysqli_query($conn, $query);
while($row = mysqli_fetch_assoc($result))
{
    $query = "SELECT gezette_vruchten, uitgroeiduur FROM gewasregistratie WHERE user_id = ".$user." AND kenmerk = '".$row["kenmerk"]."'";
    $result = mysqli_query($conn, $query);

    $week = 1;
    while($row = mysqli_fetch_assoc($result)) // Eerst van week 1 tot 52 de gezette_vruchten een lege waarde meegeven om zo te voorkomen dat ze niet gedefieneerd zijn.
    {
        echo ${'gezette_vruchten_week_'.$week}  = $row["gezette_vruchten"];
        echo ${'uitgroeiduur_week_'.$week}      = $row["uitgroeiduur"];

        $week++;
    }
}

The first query has 2 'kenmerk' results in the database: 'standaard' and 'natugro' the second query has 52 results in the database for each 'kenmerk' for example. 'gezette_vruchten' with 'kenmerk' 'standaard' has 52 weeks and 'gezette_vruchten' with 'kenmerk' 'natugro' has also 52 weeks. so i want for both 'kenmerk' the results of the week were in now.

i hope you can understand this

Upvotes: 0

Views: 76

Answers (1)

DS9
DS9

Reputation: 3033

change the name of second while loop..

while($row2 = mysqli_fetch_assoc($result)) // Eerst van week 1 tot 52 de gezette_vruchten een lege waarde meegeven om zo te voorkomen dat ze niet gedefieneerd zijn.
{
    echo ${'gezette_vruchten_week_'.$week}  = $row2["gezette_vruchten"];
    echo ${'uitgroeiduur_week_'.$week}      = $row2["uitgroeiduur"];

    $week++;
}

because your variable name for both while loop is same..so i think it is comflict. so change one of the variable name of while loop.

Upvotes: 3

Related Questions