PHP: как повторить другой случай результата Mysql в таблице?

Я хочу показать таблицу как:

|             |  qty | S rank | A rank | B rank | C rank |
+--------------------------------------------------------+  
| TODAY       |  12  |   0    |   0    |    0   |    0   |    //THIS CURRENT DATA
+--------------------------------------------------------+
|MONTHLY TOTAL| 200  |   1    |   0    |    0   |    0   |    //THIS MONTHLY DATA
+--------------------------------------------------------+

Приведенная выше таблица будет отображаться после повторения результата mysql с использованием PHP. Как объединить два случая в одну таблицу после echo? используя двойной $sql или что-то еще использовать PHP? До сих пор мне удавалось эхо-текущие данные, но для месячных данных я запутался, как решить, каким образом я должен попытаться это сделать.

Скрипт ТЕКУЩИЕ ДАННЫЕ:

..........
$sql = " SELECT COUNT(Serial_number) AS n, SUM(S) AS S,SUM(A) AS A, SUM(B) AS B, SUM(C) AS C
FROM inspection_report WHERE Model LIKE 'KD-R306TUND' AND Lot_no LIKE '066A' AND Line LIKE 'FA 01' AND Range_sampling ='087X0001-087X0400' GROUP BY Range_sampling";
$result=mysql_query($sql) or die(_ERROR26.": ".mysql_error());
echo "<table border='1' width='500'>";
echo "<caption>INSPECTION REPORT</caption>";
echo "<thead><tr>";
echo "<td colspan='3'></td>";
echo "<th>n</th><th>S</th><th>A</th><th>B</th><th>C</th>";
echo "</tr></thead>";
echo "<tbody>";
while($row=mysql_fetch_array($result)){
        echo "<tr><th rowspan='2'>JUDGE</td><td id='acc' bgcolor='grey'>ACCEPT</td><th>TODAY</th><td>";
        echo $row['n'];
        echo "</td><td>";
        echo $row['S'];
        echo "</td><td>";
        echo $row['A'];
        echo "</td><td>";
        echo $row['B'];
        echo "</td><td>";
        echo $row['C'];
        echo "</td></tr>";
        }
echo "</tbody></table>";
mysql_close($dbc);
?>

Этот запрос для подсчета ЕЖЕМЕСЯЧНЫХ данных:

SELECT COUNT(Serial_number) AS n, SUM(S) AS S,SUM(A) AS A, SUM(B) AS B, SUM(C) AS C
FROM inspection_report WHERE Inspection_datetime <=
     ( SELECT DATE(MAX(Inspection_datetime)) FROM inspection_report
       WHERE Model LIKE 'KD-R306TUND' AND Lot_no LIKE '066A'
       AND Line LIKE 'FA 01' AND Range_sampling ='087X0001-087X0400' )
AND MONTH(Inspection_datetime)=MONTH(CURRENT_DATE) AND Line ='FA 01'

Могу ли я получить результат, как в таблице выше?


person nunu    schedule 20.03.2012    source источник


Ответы (1)


Из предложенной вами структуры она содержит 3 строки и 6 полей. Теперь вернемся к базовому HTML 101.

Для создания таблицы вам потребуется:

<table></table>

Чтобы создать строку и столбец, вам нужно:

<tr><!-- start of row -->
    <td><!-- start of field 1 -->
        {table's field 1 content}
    </td><!-- end of field 1 -->
    <td><!-- start of field 2 -->
        {table's field 2 content}
    </td><!-- end of field 2 -->
</tr><!-- end of row -->

Для получения дополнительной информации о том, как создать HTML-таблицу.

Теперь вернемся к вашему делу. Вы уже создали первую и вторую строки, и к этому уже должны понимать, как это сделать.

Итак, когда вам нужно добавить еще одну строку таблицы, все, что вам нужно сделать, это вставить код строки таблицы.

Незадолго до:

echo "</tbody></table>";

Вы выполняете второй (ежемесячный) запрос и повторяете его значение, например:

$sql = "{your sql query}";
$result=mysql_query($sql) or die(_ERROR26.": ".mysql_error());


while($row=mysql_fetch_array($result)){
    echo "<tr><th rowspan='2'>JUDGE</td><td id='acc' bgcolor='grey'>ACCEPT</td><th>MONTHLY TOTAL</th><td>";
    echo $row['{field_name}'];
    echo "</td><td>";
    .
    .
    .
    echo "</td></tr>";
}
echo "</tbody></table>";
person ariefbayu    schedule 20.03.2012
comment
did you mean put $sql2 до echo "</tbody></table>"; ? как повторить новый <tr> для ежемесячного результата? - person nunu; 20.03.2012
comment
@nunu да, точно так же, как то, что ты делаешь каждый день. Но запрос на месяц. Прочитайте мой обновленный ответ. - person ariefbayu; 20.03.2012
comment
Хорошо, я нахожу этот путь, я знаю правила, но не знаю, как. - person nunu; 20.03.2012
comment
@nunu Вам просто нужно знать, как работают php и html. Помните, что PHP работает на стороне сервера, чтобы сгенерировать HTML, который будет работать на стороне клиента. Поэтому, имея дело с PHP, подумайте, какой код он генерирует. - person ariefbayu; 20.03.2012