Đây là một ví dụ đầy đủ về những gì bạn đang tìm kiếm:
- lấy một số dữ liệu từ mysql bằng php
- đặt dữ liệu đó vào một bảng html
- áp dụng các hàng màu xen kẽ vào bảng
Đối với việc tạo kiểu, tôi ăn gian một chút và sử dụng jquery mà tôi thấy dễ dàng hơn một chút so với những gì bạn đang cố gắng làm.
Ngoài ra, hãy nhớ $ row [field] phân biệt chữ hoa chữ thường. Vì vậy, $ row [id]! =$ Row [ID].
Hy vọng điều này sẽ giúp:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script>
<style type="text/css">
tr.header
{
font-weight:bold;
}
tr.alt
{
background-color: #777777;
}
</style>
<script type="text/javascript">
$(document).ready(function(){
$('.striped tr:even').addClass('alt');
});
</script>
<title></title>
</head>
<body>
<?php
$server = mysql_connect("localhost","root", "");
$db = mysql_select_db("MyDatabase",$server);
$query = mysql_query("select * from employees");
?>
<table class="striped">
<tr class="header">
<td>Id</td>
<td>Name</td>
<td>Title</td>
</tr>
<?php
while ($row = mysql_fetch_array($query)) {
echo "<tr>";
echo "<td>".$row[ID]."</td>";
echo "<td>".$row[Name]."</td>";
echo "<td>".$row[Title]."</td>";
echo "</tr>";
}
?>
</table>
</body>
</html>
Đây là mã bảng chỉ sử dụng PHP để thay thế các kiểu như bạn đang cố gắng thực hiện trong ví dụ của mình:
<table class="striped">
<tr class="header">
<td>Id</td>
<td>Title</td>
<td>Date</td>
</tr>
<?php
$i = 0;
while ($row = mysql_fetch_array($query)) {
$class = ($i == 0) ? "" : "alt";
echo "<tr class=\"".$class."\">";
echo "<td>".$row[ID]."</td>";
echo "<td>".$row[Name]."</td>";
echo "<td>".$row[Title]."</td>";
echo "</tr>";
$i = ($i==0) ? 1:0;
}
?>
</table>