从数据列表字段更新mysql表

时间:2019-03-05 22:49:32

标签: php mysqli datalist

我正在尝试在我们的工作网站上建立一个页面。该页面允许您创建一个活动,然后将其存储在mysql数据库的表中。创建活动时,字段之一是“分配给执行人”。这使用一个使用数据列表选项的下拉菜单。数据列表是从数据库表中自动填充的。尽管代码可能不是最干净的,但效果很好。

            <input list="assigned_to" name="assigned_to" placeholder="Please select..." required>
        <datalist id="assigned_to">
          <?php
          $stmt = $conn->prepare("SELECT * FROM users WHERE idUsers = ?");
          $stmt->bind_param("s", $userId);
          $stmt->execute();
          $result = $stmt->get_result();
            while($row = $result->fetch_assoc()) {
                $uidUsersFromAdmin = $row["uidUsersFromAdmin"];
            }
           $stmt->close();
           $stmt = $conn->prepare("SELECT * FROM users WHERE uidUsersFromAdmin = ?");
           $stmt->bind_param("s", $uidUsersFromAdmin);
           $stmt->execute();
           $result = $stmt->get_result();
             while($row = $result->fetch_assoc()) {
               $emailUsers           =   $row['emailUsers'];
               echo "<option value=\"$emailUsers\"></br>";
           }
            $stmt->close();
           ?>
        </datalist>

当我尝试更新表时出现了问题。如果用户希望更改活动中的某些内容,则update_activity页会引入相同的数据列表并完美地填充它,但是,如果某人没有更改“分配给”人员,则数据库表中的字段将替换为空白

请从更新页面查看以下代码

            <input list="assigned_to" name="assigned_to" placeholder="<?php echo $assigned_to ;?>">
        <datalist id="assigned_to">
          <!-- This code brings in the 'operatives' from the users database -->
                        <?php
                $stmt = $conn->prepare("SELECT * FROM users WHERE uidUsersFromAdmin = ?");
                $stmt->bind_param("s", $uidUsersFromAdmin);
                $stmt->execute();
                $result = $stmt->get_result();
                while($row = mysqli_fetch_array($result)) {
                    $uidUsersFromAdmin  =   $row['uidUsers'];
                    echo "<option value=\"$uidUsersFromAdmin\">";
                  }
                 $stmt->close();
               ?>            
        </datalist>

我尝试更改

<input list="assigned_to" name="assigned_to" placeholder="<?php echo $assigned_to ;?>">

<input list="assigned_to" name="assigned_to" Value="<?php echo $assigned_to ;?>">

但这只是创建一个选项,而我尝试使用

 echo "<option selected value=\"$assigned_to\">";

但是这也不起作用。非常感谢您的帮助

0 个答案:

没有答案