PHP, MYSQL, HTML-таблица с таблицей

Попытка добавить tablesorter добавлена ​​к странице, которую я создаю. Я очень мало знаю о jquery, поэтому я предполагаю, что это моя ошибка. Я добавил требуемый код в области <head> на моей странице и внес необходимые изменения в таблицу. Моя таблица по-прежнему отображается так же, как и с HTML. Идеи?

 <html> <head> <title>Inventory</title> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script> <script type="text/javascript" src="http://tablesorter.com/__jquery.tablesorter.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("table").tablesorter(); }); </script> </head> <body> <?php $con=mysqli_connect("localhost","user","pass","db_name"); if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } $query = "SELECT products.name, products.sku, inventory.quantityfry, inventory.quantityjuv, inventory.quantityadult, inventory.notes, inventory.location, inventory.owner FROM products INNER JOIN inventory ON products.sku=inventory.sku"; $result = mysqli_query($con,$query) or die(mysqli_error($con)); echo "<table border='1' id='table' class='tablesorter'> <thead> <tr> <th>Species</th> <th>SKU</th> <th>Fry Count</th> <th>Juvie Count</th> <th>Adult Count</th> <th>Notes</th> <th>Location</th> <th>Owner</th> </tr> </thead>"; while ($row = mysqli_fetch_assoc($result)) { echo "<tbody>"; echo "<tr>"; echo "<td>" . $row['name'] . "</td>"; echo "<td>" . $row['sku'] . "</td>"; echo "<td>" . $row['quantityfry'] . "</td>"; echo "<td>" . $row['quantityjuv'] . "</td>"; echo "<td>" . $row['quantityadult'] . "</td>"; echo "<td>" . $row['notes'] . "</td>"; echo "<td>" . $row['location'] . "</td>"; echo "<td>" . $row['owner'] . "</td>"; echo "</tr>"; echo "</tbody>"; } mysqli_free_result($result); echo "</table>"; mysqli_close($con); ?> </body> </html> 

Благодаря!

Три вещи:

  1. Не связывайте напрямую с tablesorter на tablesorter.com – сделайте копию на свой собственный сервер или используйте копию на CDN (это моя вилка tablesorter на cdnjs.com ).
  2. Включите <!DOCTYPE html> в верхней части вашего HTML, иначе IE изменится на режим quirks и в значительной степени сделает ваш сайт плохой.
  3. Как отметил @MikeB, приведенный выше код обертывает каждую строку в tbody , исправьте код следующим образом (это всего лишь фрагмент):

     echo "<table border='1' id='table' class='tablesorter'> <thead> <tr> <th>Species</th> <th>SKU</th> <th>Fry Count</th> <th>Juvie Count</th> <th>Adult Count</th> <th>Notes</th> <th>Location</th> <th>Owner</th> </tr> </thead><tbody>"; while ($row = mysqli_fetch_assoc($result)) { echo "<tr>"; echo "<td>" . $row['name'] . "</td>"; echo "<td>" . $row['sku'] . "</td>"; echo "<td>" . $row['quantityfry'] . "</td>"; echo "<td>" . $row['quantityjuv'] . "</td>"; echo "<td>" . $row['quantityadult'] . "</td>"; echo "<td>" . $row['notes'] . "</td>"; echo "<td>" . $row['location'] . "</td>"; echo "<td>" . $row['owner'] . "</td>"; echo "</tr>"; } mysqli_free_result($result); echo "</tbody></table>";