PHP:在一列中显示MySQL中包含相同值的所有行
我正在尝试用PHP编写一个Mysql数据库的代码,问题是我想用相同的列值显示所有行。例如:PHP:在一列中显示MySQL中包含相同值的所有行,php,mysql,Php,Mysql,我正在尝试用PHP编写一个Mysql数据库的代码,问题是我想用相同的列值显示所有行。例如: id | Name | age | Location | type ----+----------+-----+----------+------ 1 | Ane | 22 | SG | 1 2 | Angi | 19 | IND | 2 3 | Bobby | 23 | PH | 1 4 | Denis
id | Name | age | Location | type
----+----------+-----+----------+------
1 | Ane | 22 | SG | 1
2 | Angi | 19 | IND | 2
3 | Bobby | 23 | PH | 1
4 | Denis | 26 | IND | 1
5 | Jerry | 21 | SG | 1
6 | Mikha | 25 | JP | 2
id | Name | age | Location | type
---+----------+-----+----------+------
1 | Ane | 22 | SG | 1
3 | Bobby | 23 | PH | 1
4 | Denis | 26 | IND | 1
5 | Jerry | 21 | SG | 1
我只想在列类型中显示值为1的行,或在列位置中显示值的行,并在html视图中显示为表
我想要的结果是这样的:
id | Name | age | Location | type
----+----------+-----+----------+------
1 | Ane | 22 | SG | 1
2 | Angi | 19 | IND | 2
3 | Bobby | 23 | PH | 1
4 | Denis | 26 | IND | 1
5 | Jerry | 21 | SG | 1
6 | Mikha | 25 | JP | 2
id | Name | age | Location | type
---+----------+-----+----------+------
1 | Ane | 22 | SG | 1
3 | Bobby | 23 | PH | 1
4 | Denis | 26 | IND | 1
5 | Jerry | 21 | SG | 1
这是我的代码:
<?php
$con = mysqli_connect("localhost","root","","testuser");
$query = mysqli_query("SELECT * FROM `usersdata` WHERE `type`='1'");
$result = mysqli_query($con,$query);
echo "<table class='tmaintable' border='0' cellpadding='3' width='99%' align='center' cellspacing='1'>
<tr class='theader'>
<td>ID</td>
<td>Name</td>
<td>Age</td>
<td>Location</td>
<td>Type</td>
</tr>";
while($row = mysqli_fetch_array($result)){
echo "<tr class='todd'>";
echo "<td style='text-align:center;' >" . $row['id'] . "</td>";
echo "<td>" . $row['name'] . "</td>";
echo "<td>" . $row['age'] . "</td>";
echo "<td>" . $row['location'] . "</td>";
echo "<td>" . $row['type'] . "</td>";
echo "</tr>";
}
echo "</table>";
?>
更改
$query=mysqli\u query(“从usersdata中选择*,其中type='1')代码>
到
$query=“从usersdata中选择*,其中type='1'代码>
编辑
仅供解释:
mysqli_查询有两个参数:连接和查询。我假设您只想在引起此错误的这一行中创建查询字符串,因为它被进一步用作查询字符串。问题在bolow行中。
$query=mysqli_query(“从usersdata
WHEREtype
='1'”中选择*);
$result=mysqli\u查询($con,$query)
您有两种方法来解决此问题
1. $query = "SELECT * FROM `usersdata` WHERE `type`='1'";
$result = mysqli_query($con,$query);
2. $query = mysqli_query($con,"SELECT * FROM `usersdata` WHERE `type`='1'");
试试这个。它应该工作得很好
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "test";
// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
$sql = "SELECT * FROM `usersdata` WHERE `type`='1'";
$result = mysqli_query($conn, $sql);
echo "<table class='tmaintable' border='0' cellpadding='3' width='99%' align='center' cellspacing='1'>
<tr class='theader'>
<td>ID</td>
<td>Name</td>
<td>Age</td>
<td>Location</td>
<td>Type</td>
</tr>";
while($row = mysqli_fetch_array($result)){
echo "<tr class='todd'>";
echo "<td style='text-align:center;' >" . $row['id'] . "</td>";
echo "<td>" . $row['name'] . "</td>";
echo "<td>" . $row['age'] . "</td>";
echo "<td>" . $row['location'] . "</td>";
echo "<td>" . $row['type'] . "</td>";
echo "</tr>";
}
echo "</table>";
?>
运行此代码时您会得到什么??有错误吗??其他一些我猜您将得到一个数组作为结果。您必须阅读每一行并将其打印在表格中。如果有,您当前的输出是什么?没有输出,我只得到一个标题表格,并在结果中显示这是错误的…您可以添加一些解释文字,以便OP知道为什么要这样做吗?