如何使用sql数据填充html下拉列表

时间:2018-03-09 09:20:00

标签: php html mysql html-select

我是PHP的新手,希望能得到一些帮助。 我试图用我的SQL数据库中的数据填充HTML下拉列表。 我希望能够从下拉列表中选择一个项目,然后使用数据库中的相关记录填充HTML表格。 到目前为止,我已设法连接到我的数据库并从相关表中检索所有数据。

有人可以帮助我通过下拉列表进行设置吗?

由于

 <?php
 $username = 'root';
 $password = '';

 $conn = new PDO( 'mysql:host=localhost; dbname=Oaktown', $username, $password );
 $sql ="SELECT RoundNumber, RoundDate, HomeTeam, HomeTeamScore, AwayTeam, AwayTeamScore FROM Fixture";
 $statement = $conn->prepare( $sql );
 $statement->execute();
 $results = $statement->fetchAll( PDO::FETCH_ASSOC );

 ?>
        <h2>Competitions</h2>
<article>
    <p id="TableHeader1">Fixture Information</p>
    <P>Select Round and Game number from the dropdown list under Round Number.</P>
    <br>

    <br><form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>">
<p id="TableHeader2">Round Number &nbsp; &nbsp; 
<select style="width:250px"></select>&emsp;&emsp;<input class="button" 
type="submit" name="Get" value="Get Fixture Results"></p>

<p id="TableHeader2">Results</p>
<table class="table">
<tr><td><b>Round Number:</b></td>
<?php foreach( $results as $row ){
    echo "<td>";
    echo $row['RoundNumber'];
 }
?>
</tr>

<tr>
<td><b>Round Date:</b></td>.
<?php foreach( $results as $row ){
    echo "<td>";
    echo $row['RoundDate'];
 }
 ?>
</tr>

<tr>
<td><b>Home Team:</b></td>
<?php foreach( $results as $row ){
    echo "<td>";
    echo $row['HomeTeam'];
 }
 ?>
</tr>

<tr>
<td><b>Home Team Score:</b></td>
<?php foreach( $results as $row ){
    echo "<td>";
    echo $row['HomeTeamScore'];
   }
 ?> 
</tr>

<tr>
<td><b>Away Team:</b></td>
<?php foreach( $results as $row ){
    echo "<td>";
    echo $row['AwayTeam'];
   }
 ?> 
</tr>

<tr>
<td><b>Away Team Score:</b></td>
<?php foreach( $results as $row ){
    echo "<td>";
    echo $row['AwayTeamScore'];
   }
 ?> 
            <td colspan="2><?php echo $message; ?>"></td>
</tr>

 </table>

</form>

1 个答案:

答案 0 :(得分:4)

使用类似于您用于表格的代码块,您可以执行以下操作:

<select>
<?php foreach( $results as $row ){
    echo "<option value='" . $row['value column'] . "'>" . $row['text column'] . "</option>";
   }
 ?> 
</select>

如果您没有或不需要一对价值观,那么您可以这样做:

<select>
<?php foreach( $results as $row ){
    echo "<option>" . $row['text column'] . "</option>";
   }
 ?> 
</select>