php - 使用来自 PHP 函数的数据填充 HTML 列表框
问题描述
我试图找出如何用我在 PHP 代码中收到的数据填充 HTML ListBox。
HTML 代码:
<select id="listObject" name="listObject" size="number_of_options" multiple="multiple" style="width:90%; height:300px">
<option value="option1">1</option>
<option value="option2">2</option>
<option value="Option3">3</option>
</select>
还有我的 PHP 代码:
<?php
if ($_SERVER['REQUEST_METHOD'] === 'GET') {
( isset($_GET['url']) ? $url=$_GET['url'] : "");
( isset($_GET['channel']) ? $chan =$_GET['channel'] : "");
( isset($_GET['getdata']) ? $repeater =$_GET['getdata'] : "");
( isset($_GET['putdata']) ? $ownerUUID =$_GET['putdata'] : "");
$objectname = "";
$objectuuid = "";
if( isset($_GET['url']) ) {
$entry_line = "** $url | $chan |"; // save the url with a double asterisk marker
$fp = fopen("uuid.txt", "w"); // w,r,a
fputs($fp, $entry_line);
fclose($fp);
};
if( isset($_GET['putdata']) ) {
$items = explode(" ", $ownerUUID);
$objectname = $items[0];
$objectuuid = $items[1];
echo "TMOReport|{$objectname}|some more text";
// tried this but nothing //
echo '<select name="listObject" id="listObject">';
echo "<option value={$objectname}></option>";
echo '</select>';
};
?>
我根据我发现的东西评论了我尝试的回声部分,但这似乎不起作用。
PHP 代码被另一台服务器上的事件触发,该事件包含该信息并希望将 $objectname 添加到 HTML 的值中
解决方案
您可以通过以下方式通过将返回 html 的函数来执行此操作。只要您想这样做就可以了,因为您提到它是用php。
public function populate_listbox($function, $id, $name, $selected = null)
{
$data = $this->$function();
$html = '<select id="' . $id . '" name="' . $name . '">';
foreach ($data as $key => $value) {
$html .= '<option value="' . $key . '" ' . (($key == $selected) ? 'selected' : '') . '>' . $value . '</option>';
}
$html .= '</select>';
return $html;
}
该函数接收 3 个强制参数和一个可选参数。$function
是一个选项数组,$id
正如$name
变量的名称所说,是 id 和将具有 Select 的名称,最后$selected
在您希望默认选择该 select 的选项之一时服务。
推荐阅读
- java - 正确的表达式不是 JPQL/HQL 查询中的有效表达式
- python - 如何通过索引更改基于另一列的一列值
- docker-compose - 带有 traefik 和内部网络的 Docker-compose 服务
- excel - 使用 Excel 中的指定索引对矩阵进行洗牌?
- r - 交叉验证结构方程建模
- python - 我无法使用 for 循环在列表中分配整数的总和
- node.js - React 如何与 Github 页面一起工作,而不是 github 页面仅适用于静态网站?
- discord.js - discord.js 为@everyone 锁定一个频道
- spring-boot - SpringBoot Lambda 部署问题 - EmbeddedServletContainer - java.lang.NoClassDefFoundError
- javafx - JavaFX 警报信息不再显示 ContentText 不知道为什么