PHP/MySQL:来自MySQL的数据不显示在选择选项(下拉列表)中
我创建了一个下拉列表,其中所有数据都是从MySQL数据库表中的一列填充的。问题是,数据不显示。我不知道为什么。下面是我的代码: PHPPHP/MySQL:来自MySQL的数据不显示在选择选项(下拉列表)中,php,mysql,Php,Mysql,我创建了一个下拉列表,其中所有数据都是从MySQL数据库表中的一列填充的。问题是,数据不显示。我不知道为什么。下面是我的代码: PHP html 团队 php在while循环中的更改如下: <?php //getting id from url $badgeid = $_GET['badgeid']; //selecting data associated with this particular id $sql = "SELECT * FROM users LEFT JOIN r
html
团队
php在while循环中的更改如下:
<?php
//getting id from url
$badgeid = $_GET['badgeid'];
//selecting data associated with this particular id
$sql = "SELECT * FROM users LEFT JOIN roles on users.roles_id = roles.roles_id LEFT JOIN team on users.team_id = team.team_id WHERE badgeid = :badgeid";
$query = $conn->prepare($sql);
$query->execute(array(':badgeid' => $badgeid));
$rows = $query->fetchAll(PDO::FETCH_ASSOC);
foreach($rows as $row)
{
$badgeid[] = $row["badgeid"];;
$fullname[] = $row["fullname"];
$roles_id[] = $row["roles_id"];
$roles_name[] = $row["roles_name"];
$team_id[] = $row["team_id"];
$team_name[] = $row["team_name"];
}
?>
您直接在while循环中获取数据,所以它跳过第一行,所以$row中并没有数据。并使用fetchAll()以获取表中的所有行。fetch()仅一行。是否尝试通过命令行运行查询?$query->fetch在获取最后一条记录后将返回false,因此,$row
在while循环后将包含false。您进行了显式的工作,将行值分配给循环中的专用变量,但之后您不再使用这些变量,而是尝试使用$row。我猜你期望的结果中最多有一条记录?那么为什么要首先使用循环呢?而($row)
–那将是一个无止境的循环,因为$row在循环中永远不会被修改。@Zar Ni Ko,对不起。你的回答错了。从badgeid开始的未定义索引,直到团队名称再次检查我的ans@Radamel Falcao
<tr>
<td width="20%"><b>Team</b></td>
<td width="80%">
<select class="form-control" id="exampleFormControlSelect1" name="team_name">
<?php echo "<option value='".$row["team_name"]."'>".$row["team_name"]."</option>"; ?>
</select>
</td>
</tr>
<?php
//getting id from url
$badgeid = $_GET['badgeid'];
//selecting data associated with this particular id
$sql = "SELECT * FROM users LEFT JOIN roles on users.roles_id = roles.roles_id LEFT JOIN team on users.team_id = team.team_id WHERE badgeid = :badgeid";
$query = $conn->prepare($sql);
$query->execute(array(':badgeid' => $badgeid));
$rows = $query->fetchAll(PDO::FETCH_ASSOC);
foreach($rows as $row)
{
$badgeid[] = $row["badgeid"];;
$fullname[] = $row["fullname"];
$roles_id[] = $row["roles_id"];
$roles_name[] = $row["roles_name"];
$team_id[] = $row["team_id"];
$team_name[] = $row["team_name"];
}
?>