PHP ECHO table 使用 FOR EACH 将动态下拉列表作为一列
PHP ECHO table with dynamic dropdown as one column using FOR EACH
我有点卡住了,我正在尝试用 HTML 和 PHP 构建一个 table。好的,完成了。现在我想添加一个动态下拉列表作为列选项之一,但似乎无法弄清楚如何混合 PHP、HTML 和所需的 FOR EACH 循环。
我知道它目前是错误的,但我在下面发布了我一直在尝试的变量。
echo '<td>' . "<select>". "<option value =" . $sf_name . ' '. $sl_name . ">" . $sf_name . ' '. $sl_name . "</option>" .
foreach($Staff_On_Duty as $person){
"<option value =" . $sf_name_option=$person->Staff_First_Name . ' '. $sl_name_option=$person->Staff_Last_Name . ">" . $sf_name_option . ' '. $sl_name_option . "</option>"
}
. "</select>" .'</td>';
我需要让当前选择的个人位于下拉列表的顶部,并提供将那个人改掉的选项。第一个 .sf_name 来自代码的较高位置,并为我提供了当前所选人员的姓名。 foreach 从 $Staff_On_Duty 查询运行,让我知道现在每个人都在工作。正确的做法是什么?
这就是我的做法,基本上只填写下拉列表并标记应该选择的选项(其他内容是偏好问题):
echo("<td><select>");
foreach($Staff_On_Duty as $person){
$sf_name_option=$person->Staff_First_Name; // separated for clarity, you could also use $person->Staff_First_Name everywhere
$sl_name_option=$person->Staff_Last_Name;
echo("<option value = $sf_name_option $sl_name_option");
if (($sf_name_option == $sf_name) && ($sl_name_option == $sl_name)) echo (" selected"); // this is the relevant part, but make sure variable values match!
echo(">$sf_name_option $sl_name_option</option>");
}
echo("</select></td>");
请注意,我没有加任何引号,因为我不知道你的变量需要什么,但如果你还没有它们,它会需要它们,即:
... value=\"$sf_name_option $sl_name_option\" ...
我有点卡住了,我正在尝试用 HTML 和 PHP 构建一个 table。好的,完成了。现在我想添加一个动态下拉列表作为列选项之一,但似乎无法弄清楚如何混合 PHP、HTML 和所需的 FOR EACH 循环。
我知道它目前是错误的,但我在下面发布了我一直在尝试的变量。
echo '<td>' . "<select>". "<option value =" . $sf_name . ' '. $sl_name . ">" . $sf_name . ' '. $sl_name . "</option>" .
foreach($Staff_On_Duty as $person){
"<option value =" . $sf_name_option=$person->Staff_First_Name . ' '. $sl_name_option=$person->Staff_Last_Name . ">" . $sf_name_option . ' '. $sl_name_option . "</option>"
}
. "</select>" .'</td>';
我需要让当前选择的个人位于下拉列表的顶部,并提供将那个人改掉的选项。第一个 .sf_name 来自代码的较高位置,并为我提供了当前所选人员的姓名。 foreach 从 $Staff_On_Duty 查询运行,让我知道现在每个人都在工作。正确的做法是什么?
这就是我的做法,基本上只填写下拉列表并标记应该选择的选项(其他内容是偏好问题):
echo("<td><select>");
foreach($Staff_On_Duty as $person){
$sf_name_option=$person->Staff_First_Name; // separated for clarity, you could also use $person->Staff_First_Name everywhere
$sl_name_option=$person->Staff_Last_Name;
echo("<option value = $sf_name_option $sl_name_option");
if (($sf_name_option == $sf_name) && ($sl_name_option == $sl_name)) echo (" selected"); // this is the relevant part, but make sure variable values match!
echo(">$sf_name_option $sl_name_option</option>");
}
echo("</select></td>");
请注意,我没有加任何引号,因为我不知道你的变量需要什么,但如果你还没有它们,它会需要它们,即:
... value=\"$sf_name_option $sl_name_option\" ...