php - 根据数据库值更改选择框值

标签 php mysql dom

我有一个选择框,其中有超过 750 个选项值。实际上它是在 HTML 页面中硬编码的。我需要它来插入一个单独的表格并使用 foreach 来填充它。请告诉我这可能吗?

<select name="PassNum"> 
<option value="12HTQD" <?php if($PassDetail['Mak']=="12HTQD"){?> selected="selected"<?php } ?> >12HTQD</option>
<option value="12HTMD" <?php if($PassDetail['Mak']=="12HTMD"){?>  selected="selected"<?php } ?> >12HTMD</option>
<option value="78HTMD" <?php if($PassDetail['Mak']=="78HTMD"){?>  selected="selected"<?php } ?> >78HTMD</option>

---------------------------------------
---------------------------------------
 </select>

手动操作太费时间了

更新

我想要从给定的 HTML 到 DB 的硬编码值..所以我可以从 DB 填充它..现在它是硬编码的..

提前致谢。

最佳答案

请尝试这种方式..

function getTextBetweenTags($string, $tagname) {
    $pattern = "/<$tagname ?.*>(.*)<\/$tagname>/";
    preg_match_all($pattern, $string, $matches);
    return $matches["1"];
}


$str = '<option value="12HTQD" <?php if($PassDetail['Mak']=="12HTQD"){?> selected="selected"<?php     } ?> >12HTQD</option>
<option value="12HTMD" <?php if($PassDetail['Mak']=="12HTMD"){?>  selected="selected"<?php } ?> >12HTMD</option>
<option value="78HTMD" <?php if($PassDetail['Mak']=="78HTMD"){?>  selected="selected"<?php } ?> >78HTMD</option>
';


$txt = getTextBetweenTags($str, "option");
echo "<pre>";
print_r($txt);

现在它将返回一个数组..您可以使用您的逻辑将数组值插入数据库..

关于php - 根据数据库值更改选择框值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16910512/

相关文章:

php - 获取最大值的日期和时间

mysql - 为多个 ID 插入多个数据集

javascript - 如何根据另一个选择选项禁用选择选项

javascript - 如何从表单中检索所有元素?

php - MySQL 在查询匹配的情况下使用 concat 更改 id

javascript - JQuery getJSON 在 IE 中不起作用

javascript - 测试 xml 中是否有空文本节点

javascript - 使用 jQuery 的 Html5 postMessage,但不是 jQuery-postMessage 脚本

php - 用户墙 PHP 和 MYSQL

PHP无法连接到MySQL