2015-04-29 3 views
0

Я пытаюсь создать таблицу, связанную с моей базой данных, чтобы я мог использовать информацию в этой базе данных.HTML-таблица с использованием MySQLi и PHP

Я думаю, что я на правильном пути, но в настоящее время таблица отображает только первую строку. У кого-нибудь есть идеи о том, что происходит?

  <table id="fairtable"> 
      <tr> 
       <td>Fair Name</td> 
       <td>Date</td> 
       <td>Are we there?</td> 
       <td>Website</td> 
      </tr> 
      <?php 
      $sql = "SELECT `name`,`date`,`present`,`website` FROM `dates`"; 
      $results = mysqli_query($conn,$sql); 

      while($rowitem = mysqli_fetch_array($results)) { 
      echo "<tr>"; 
       echo "<td>" . $rowitem['name'] . "</td>"; 
       echo "<td>" . $rowitem['date'] . "</td>"; 
       echo "<td>" . $rowitem['present'] . "</td>"; 
       echo "<td>" . $rowitem['website'] . "</td>"; 
      echo "</tr>"; 
      } 
      ?> 
     </table> 
+0

Ьгу 'mysqli_fetch_assoc' –

+0

Вы также должны добавить некоторые проверки ошибок, например,' или умереть (mysqli_error()) ' –

+0

@ Fred-II- ОР может использовать 'mysqli_fetch_array', но ему нужно повторить его с' while' вместо 'foreach', то есть _while ($ row = mysqli_fetch_array ($ results)) _ –

ответ

0

Возможно, это происходит потому, что вы не открыли свои тэги HTML таблицы правильно, его легкая вещь, чтобы пропустить. Также цикл результирующего набора внутри белого заявления:

$sql = "SELECT `name`,`date`,`present`,`website` FROM `dates`"; 
$results = mysqli_query($conn,$sql); 
echo "<table>"; //begin table tag... 
//you can add thead tag here if you want your table to have column headers 
while($rowitem = mysqli_fetch_array($results)) { 
    echo "<tr>"; 
    echo "<td>" . $rowitem['name'] . "</td>"; 
    echo "<td>" . $rowitem['date'] . "</td>"; 
    echo "<td>" . $rowitem['present'] . "</td>"; 
    echo "<td>" . $rowitem['website'] . "</td>";*/ 
    echo "</tr>"; 
} 
echo "</table>"; //end table tag 
+0

Я не показывал полный код, только соответствующий код php. Обновлен главный пост. –

0

Ваш код получает только одну строку из таблицы, вам нужны петли ваших результатов.
Попробуйте этот код:

$results = mysqli_query($conn,$sql); 

while($row = mysqli_fetch_array($results)) 
{ 
    //do smth 
} 
+1

Зачем OP «попробуйте это»? Пожалуйста, добавьте объяснение того, что вы сделали, и почему вы сделали это таким образом не только для OP, но и для будущих посетителей SO. –

+0

Это точно так же, как предложил Фред-II. Вы должны объяснить, как объяснить ответ с небольшим количеством информации –

+1

@SulthanAllaudeen, если я ошибался, предлагая OP использовать mysqli_fetch_assoc, вы должны были сказать: * «Нах Фред, это не сработает» * ;-) будьте рады удалить мой комментарий об этом. –

Смежные вопросы