在HTML表单中选择动态选定选项

时间:2016-12-27 20:36:39

标签: php html sql

我有这个下拉列表选择员工姓名:

 <select class="form-control" id="assignee" name="assignee" style="max-width: 300px;">
     <option value="Employee 1">Employee 1</option>
     <option value="Employee 2">Employee 2</option>
     <option value="Employee 3">Employee 3</option>                             
 </select>

初始值由管理员选择,可以使用UPDATE SQL功能以第二种形式更改:

 $sql = "UPDATE `jobs_canjobs` SET `job_name`='$job_name',`comments`='{$comments}',`due_date`='$newdate',`assignee`='$assignee',`assign_email`='$assign_email',`AE`='$AE',`Property`='$property' WHERE job_numb = '$job_numb'";

但是,每次他们对表单进行任何更改时,都会选择初始选项,从而更改$assignee$assign_email。我曾尝试使用变量user selected,但我认为这是确保用户不会经常更改的错误方法。

如何确保选择的员工出现在编辑表格中?

2 个答案:

答案 0 :(得分:2)

首先:了解PHP Data Objects(简称PDO)并开始 立即使用准备好的陈述使您的最终产品更多 安全

您对,"resources": [{ "apiVersion": "[variables('sbVersion')]", "name": "$Default", "type": "Rules", "dependsOn": ["[parameters('serviceBusSubscriptionName')]"], "properties": { "filterType": "SqlFilter", "sqlFilter": { "sqlExpression": "1=1", "requiresPreprocessing": false }, "action": { "sqlExpression": "set something = 'something'" } } }]的判断是正确的,只需要一个额外的步骤:执行 查询以查找select的当前所选值。这个 如果您已经在检索正确的数据库,则可能不需要 您的编辑表单中的行。我想你正在这样做,填写表格。如果 不,使用查询来检索此特定列或其他额外列, 像:

assignee

现在,您可能已经有了一系列可能的员工来生成 选项。如果它看起来像这样:

SELECT assignee FROM jobs_canjobs WHERE job_numb=?

...然后您可以继续生成以下选项:

$employees = [
    'Employee 1',
    'Employee 2',
    'Employee 3'
];

$assignee = /* find out who is the current one in DB, as discussed */

答案 1 :(得分:0)

现在我想到的最佳答案是使用所选用户的echo SQL创建另一个<option>字段:

 <select class="form-control" id="assignee" name="assignee" style="max-width: 300px;">
    <option value="<? echo $assignee;?>" selected><? echo $assignee;?></option>
    <option value="Employee 1">Employee 1</option>
    <option value="Employee 2">Employee 2</option>
    <option value="Employee 3">Employee 3</option>                             

并且选择了这个,所以除非编辑采取行动,否则不能改变。