2014-10-20 1 views
0

Я пытаюсь распечатать все свои данные в таблице html, которая работает, но только для первой строки таблицы.PHP Mysql запрос к таблице html только вставляет в первую строку таблицы

Мой PHP код:

$data = ""; 
while ($row = mysqli_fetch_assoc($result)) { 
    $data = "<tr> 
       <td>" . $row['name'] . "</td> 
       <td>" . $row['email'] . "</td> 
       <td>" . $row['message'] . "</td> 
       <td>" . $row['created'] . "</td> 
      </tr>"; 
} 

Мой HTML-код:

<!DOCTYPE html> 
<html> 
<body> 

<table border="1"> 
    <tr> 
     <th width="15%">Name</th> 
     <th width="15%">Email</th> 
     <th width="50%">Message</th> 
     <th width="20%">Created</th> 
    </tr> 
    <?= $data ?> 
</table> 

</body> 
</html> 

Как я могу сделать таблицу автоматически вставить несколько строк, и данные MySQL?

Оба эти кода находятся в 1 php-файле.

ответ

1

Мне кажется, что вы переустанавливаете $ data на последнюю строку для каждой итерации цикла while, вместо добавления новых html и данных в эту переменную. Вместо того, чтобы использовать:

$data .= "<tr..." 
0

Вместо

$data = "<tr> 

использование

$data.= "<tr> 

, который означает, что вы добавления всех тр в петле

+0

Спасибо !!! Я полностью забыл об этом! haha –

+0

Никогда мой ... Пожалуйста, примите ответ – Choco

1
$data = "<tr> 
      <td>" . $row['name'] . "</td> 
      <td>" . $row['email'] . "</td> 
      <td>" . $row['message'] . "</td> 
      <td>" . $row['created'] . "</td> 
     </tr>"; 

становится

$data .= "<tr> 
      <td>" . $row['name'] . "</td> 
      <td>" . $row['email'] . "</td> 
      <td>" . $row['message'] . "</td> 
      <td>" . $row['created'] . "</td> 
     </tr>"; 
Смежные вопросы