在PHP mysql上更新FK

时间:2018-12-03 17:03:49

标签: php mysql

所以,我有一个要更新一些记录的表格,所有字段都正常工作,但是FK(即id_colaborador
我还想输入用户名(nome而不是id 我有以下UPDATE代码,但它忽略了我不知道为什么的FK字段...

$sql = "UPDATE ativos  SET ativo = ?, comentario = ?, data_aquisicao = ?, localizacao = ?, fabricante = ?, modelo = ?, imei = ?, 
        numero_serie = ?, ativo_sap = ?, anexo_a = ?, evento = ?, data_evento = ?, id_colaborador = ? WHERE id_ativo = ?";

对于id_colaborador的输入,我有:

<div class="control-group <?php echo !empty($id_colaboradorError)?'error':'';?>">
                    <label class="control-label"><strong>Colaborador<span style="color: red">*</span></strong></label>
                    <div class="controls">
                        <input  type="text"  placeholder="Colaborador"  value="<?php echo !empty($id_colaborador)?$id_colaborador:'';?>">       
                        <?php if (!empty($id_colaboradorError)): ?>
                            <span class="help-inline"><?php echo $id_colaboradorError;?></span>
                        <?php endif;?>
                    </div>
                  </div>

1 个答案:

答案 0 :(得分:0)

您的表单字段缺少 name 属性。如果代码的其余部分期望名称为id_colaborador,则可以这样添加它:

<input name="id_colaborador" type="text"  placeholder="Colaborador"  value="<?php echo !empty($id_colaborador)?$id_colaborador:'';?>">

对于问题的第二部分,答案取决于您拥有多少用户。

如果只有几个,可以将它们全部列在SELECT框中,其中选项的值为数字ID。

如果用户很多,则可以使用自动完成文本字段作为名称,并使用隐藏文本输入作为ID。通过自动完成功能选择a时,您将用ID填充隐藏的输入。