dongshi1424 2018-07-14 08:52
浏览 64
已采纳

PHP自动填充<select>从数据库中标记表单数据

I don't know if this is a duplicate question. But i just want to know how to auto fill my <option> tag with data form my database

CREATE TABLE `Users` (
    `ID` INT(11) NOT NULL AUTO_INCREMENT,
    `Names` VARCHAR(50) NOT NULL DEFAULT '0',
    `Suranme` VARCHAR(50) NOT NULL DEFAULT '0',
    `Age` VARCHAR(50) NOT NULL DEFAULT '0'
    PRIMARY KEY (`ID`)
)

My Database

<select name="Names">
    <option value="1">Jhon</option>
    <option value="2">Will</option>
    <option value="3">Jack</option>
    <option value="4">Adam</option>
  </select>

Question : How do I auto fill my <option> with the names form the database table Names

  • 写回答

4条回答 默认 最新

  • dotws86260 2018-07-14 09:13
    关注

    ## I Am assuming here a sample database ##

    <?php
     $servername = "localhost";
     $username = "root";
     $password = "";
     $dbname = "myDB";
    
    // Create connection
     $conn = new mysqli($servername, $username, $password, $dbname);
    // Check connection
    if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
    }
    
    $sql = "SELECT Names FROM Users";
    $result = $conn->query($sql);
    echo "<select name="Names">";
    if ($result->num_rows > 0) {
    // output data of each row
    $i=1;
    while($row = $result->fetch_assoc()) {
        echo "<option value=$i>".$row["Names"]."</option>";
    $i++;
    }
    echo "</select>";
    } 
    $conn->close();
    ?> 
    

    This is one approach you can do as you want you can create a separate function for this.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 unity第一人称射击小游戏,有demo,在原脚本的基础上进行修改以达到要求
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)