当前位置:   article > 正文

php:下拉列表查询(静态数据+数据库数据)

php:下拉列表查询(静态数据+数据库数据)

一、在php中嵌套 

效果

1、从php中嵌套html语句

下拉列表的显示

  1. echo '<div class="text-nav-1 required "><div>' . _('在职状态') . ':</div>
  2. <select name="work_status">';
  3. // 定义选项数组
  4. $options = [
  5. 'all' => _('全部'),
  6. 'inwork' => _('在职'),
  7. 'levwork' => _('离职'),
  8. ];
  9. // 检查 $_POST['work_status'] 是否已设置,并赋予相应的默认值
  10. $selectedStatus = isset($_POST['work_status']) ? $_POST['work_status'] : 'all';
  11. foreach ($options as $value => $label) {
  12. // 判断当前选项是否为选中状态
  13. $selected = ($value == $selectedStatus) ? ' selected="selected"' : '';
  14. echo '<option value="' . $value . '"' . $selected . '>' . $label . '</option>';
  15. }
  16. echo '</select></div>';

加入sql的查询语句

  1. if (isset($_POST['work_status']) and $_POST['work_status'] != '' and $_POST['work_status'] != 'all') {
  2. $sql = $sql . " and work_status " . LIKE . " '%" . $_POST['work_status'] . "%' ";
  3. }

 2、从html嵌套php

  1. <div class="text-nav-1 required ">
  2. <div><?php echo _('在职状态'); ?>:</div>
  3. <select name="work_status">
  4. <?php
  5. // 定义选项数组
  6. $options = [
  7. 'all' => _('全部'),
  8. 'inwork' => _('在职'),
  9. 'levwork' => _('离职'),
  10. ];
  11. // 检查 $_POST['work_status'] 是否已设置,并赋予相应的默认值
  12. $selectedStatus = isset($_POST['work_status']) ? $_POST['work_status'] : 'all';
  13. foreach ($options as $value => $label) {
  14. // 判断当前选项是否为选中状态
  15. $selected = ($value == $selectedStatus) ? ' selected="selected"' : '';
  16. ?>
  17. <option value="<?php echo htmlspecialchars($value); ?>" <?php echo $selected; ?>><?php echo htmlspecialchars($label); ?></option>
  18. <?php
  19. }
  20. ?>
  21. </select>
  22. </div>

二、从数据库中查询后放入下拉列表

效果

  1. <?php
  2. $query = "SELECT DISTINCT employee_num FROM hr_employees";
  3. $result = DB_query($query, $db);
  4. // 2. 处理查询结果
  5. $options = [];
  6. while ($row = DB_fetch_array($result)) {
  7. // 假设您希望使用工作状态的实际值作为选项值,而显示的文本则进行一些转换或直接使用
  8. // 这里简化处理,直接使用employee_num值作为选项值和显示文本
  9. $options[$row['employee_num']] = $row['employee_num'];
  10. }
  11. // 添加“全部”选项
  12. $options = ['all' => _('全部')] + $options;
  13. // 3. 检查 $_POST['employee_num'] 是否已设置,并赋予相应的默认值
  14. $selectedStatus = isset($_POST['employee_num']) ? $_POST['employee_num'] : 'all';
  15. echo '<div class="text-nav-1 required "><div>' . _('工号') . ':</div>
  16. <select name="employee_num">';
  17. // 4. 生成下拉菜单
  18. foreach ($options as $value => $label) {
  19. $selected = ($value == $selectedStatus) ? ' selected="selected"' : '';
  20. echo '<option value="' . $value . '"' . $selected . '>' . $label . '</option>';
  21. }
  22. echo '</select></div>';
  23. ?>

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/210601
推荐阅读
相关标签
  

闽ICP备14008679号