在PHP中填充mySQL表中的下拉框

我试图在Php中填充mySQL查询结果的下拉框。我在网上查了一些例子,我已经在我的网页上试过了,但由于某些原因,他们根本就没有填充我的下拉框。我试图调试代码,但在我看过的网站上没有真正解释,我无法弄清楚每行代码。任何帮助都会很棒:) 这是我的查询:
Select PcID from PC;
    
已邀请:
您需要确保如果您正在使用像WAMP这样的测试环境,请将您的用户名设置为root。 下面是一个连接MySQL数据库,发出查询,并从表格中的每一行输出
<select>
框的
<option>
标签的示例。
<?php

mysql_connect('hostname', 'username', 'password');
mysql_select_db('database-name');

$sql = "SELECT PcID FROM PC";
$result = mysql_query($sql);

echo "<select name='PcID'>";
while ($row = mysql_fetch_array($result)) {
    echo "<option value='" . $row['PcID'] . "'>" . $row['PcID'] . "</option>";
}
echo "</select>";

?>
    
以下是使用
MySql
PHP
下拉的代码:
<?
$sql="Select PcID from PC"
$q=mysql_query($sql)
echo "<select name="pcid">"; 
echo "<option size =30 ></option>";
while($row = mysql_fetch_array($q)) 
{        
echo "<option value='".$row['PcID']."'>".$row['PcID']."</option>"; 
}
echo "</select>";
?>
    
由于
mysql_connect
已被弃用,请使用mysqli连接和查询:
$mysqli = new mysqli("hostname","username","password","database_name");
$sqlSelect="SELECT your_fieldname FROM your_table";
$result = $mysqli -> query ($sqlSelect);
然后,如果在同一页面上有多个具有相同值的选项列表,请将值放在数组中:
while ($row = mysqli_fetch_array($result)) {
    $rows[] = $row;
}
然后,您可以在同一页面上多次循环数组:
foreach ($rows as $row) {
    print "<option value='" . $row['your_fieldname'] . "'>" . $row['your_fieldname'] . "</option>";
}
    
经过一段时间的研究和失望......我能够做到这一点
     <?php $conn = new mysqli('hostname', 'username', 'password','dbname') or die ('Cannot connect to db') $result = $conn->query("select * from table");?>

//insert the below code in the body


    <table id="myTable"> <tr class="header"> <th style="width:20%;">Name</th>
    <th style="width:20%;">Email</th>
       <th style="width:10%;">City/ Region</th>
        <th style="width:30%;">Details</th>
  </tr>
  <?php
   while ($row = mysqli_fetch_array($result)) {

               echo "<tr>";
               echo "<td>".$row['username']."</td>";
               echo "<td>".$row['city']."</td>";
                echo "<td>".$row['details']."</td>";
               echo "</tr>";
           }

     ?>
</table>
相信我它的工作:)     
不需要这样做:
while ($row = mysqli_fetch_array($result)) {
    $rows[] = $row;
}
你可以直接这样做:
while ($row = mysqli_fetch_array($result)) {
        echo "<option value='" . $row['value'] . "'>" . $row['value'] . "</option>";
    }
    
在顶部首先设置数据库连接如下:
<?php
$mysqli = new mysqli("localhost", "username", "password", "database") or die($this->mysqli->error);
$query= $mysqli->query("SELECT PcID from PC");
?> 
然后在HTML表单中包含以下代码
<select name="selected_pcid" id='selected_pcid'>

            <?php 

             while ($rows = $query->fetch_array(MYSQLI_ASSOC)) {
                        $value= $rows['id'];
                ?>
                 <option value="<?= $value?>"><?= $value?></option>
                <?php } ?>
             </select>
但是,如果您正在使用materialize css或任何其他开箱即用的css,请确保未隐藏或禁用选择字段。     

要回复问题请先登录注册