sql >> Databasteknik >  >> RDS >> Mysql

Flera frågedata i en enda HTML-tabell (PHP, Mysql) array skrivs inte ut i rätt position?

Du måste samla in data för varje land. Ditt tillvägagångssätt i frågan förstör listningen eftersom nycklarna för arrayen inte är synkroniserade. Låt oss synkronisera dina rader efter "Land":

$data = array();
while($row = mysql_fetch_assoc($num1))
{
    $c = $row['Country'];
    if (!isset($data[$c]))
    {
        $data[$c] = array('Country' => $c);
    }
    $data[$c]['MidEstimate1'] = $row['MidEstimate'];
}
while($row = mysql_fetch_assoc($num2))
{
    $c = $row['Country'];
    if (!isset($data[$c]))
    {
        $data[$c] = array('Country' => $c);
    }
    $data[$c]['MidEstimate2'] = $row['MidEstimate'];
}

Nu har du en rad i din array för varje land, med deras data från varje fråga.

$i = 0;
foreach ($data as $row)
{
    echo ($i % 2) ? "<tr class='odd'>" : "<tr class='even'>" ;
    echo "<td align='center'>" . $row['Country']."</td>";
    echo "<td align='center'>" . $row['MidEstimate1']."</td>";
    echo "<td align='center'>" . $row['MidEstimate2']."</td>";
    echo "</tr>" ;
}

Obs:detta fungerar bara i fältet 'Land' finns i både SQL-frågor.




  1. XML platt fil kontra relationsdatabas backend

  2. SQL Server 2008 - Villkorlig fråga

  3. Hur man inre join med not in eller inte existerar i mysql-fråga?

  4. Skapa tabell med PHP och fyll i från MySQL