我想在我的php页面上显示来自mysql的数据。一切都运作良好,但......
我有两张桌子。球员和战斗。
在玩家我给了username,unique_id
在战斗中我有unique_id,杀死,死亡。
我希望拆分连接这两个表并使用此代码/表
显示它们我的代码
<?php
$connect = mysqli_connect("localhost", "root", "password", "dbname");
$query ="SELECT * FROM player ORDER BY unique_id DESC";
$result = mysqli_query($connect, $query);
?>
<!DOCTYPE html>
<html>
<head>
<title>Player Data</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />
<script src="https://cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js"></script>
<script src="https://cdn.datatables.net/1.10.12/js/dataTables.bootstrap.min.js"></script>
<link rel="stylesheet" href="https://cdn.datatables.net/1.10.12/css/dataTables.bootstrap.min.css" />
</head>
<body>
<br /><br />
<div class="container">
<h3 align="center"> Player Data</h3>
<br />
<div class="table-responsive">
<table id="employee_data" class="table table-striped table-bordered">
<thead>
<tr>
<td>username</td>
<td>unique_id</td>
</tr>
</thead>
<?php
while($row = mysqli_fetch_array($result))
{
echo '
<tr>
<td>'.$row["username"].'</td>
<td>'.$row["unique_id"].'</td>
</tr>
';
}
?>
</table>
</div>
</div>
</body>
</html>
<script>
$(document).ready(function(){
$('#employee_data').DataTable();
});
</script>
答案 0 :(得分:1)
您可以在SQL中使用INNER JOIN
来连接共享值上的两个表。
我假设unique_id
中的值是两个表共有的列。
如果您将数据库查询更改为:
SELECT
player.unique_id,
player.username,
combat.kills,
combat.deaths
FROM
player
INNER JOIN
combat ON player.unique_id = combat.unique_id
ORDER BY
player.unique_id DESC
此查询将连接列unique_id
具有相同值的两个表。
现在您可以像以前一样回复内容:
<td>'.$row["username"].'</td>
<td>'.$row["unique_id"].'</td>
<td>'.$row["kills"].'</td>
<td>'.$row["deaths"].'</td>
您可以在此处详细了解INNER JOIN
:http://www.mysqltutorial.org/mysql-inner-join.aspx