我有一个php页面,我可以在其中创建,更新并查看一些用户,而在其他页面中可以看到用户的{colaboradores's table
)项目(ativos's table
),它们与FK链接( id_colaborador
。
在ativos
创建页面上,我设法输入所有数据,而无需输入FK itselv(id_colaborador
),用户可以输入用户名(colaboradores.nome
)。
关键是,我想在UPDATE.PHP页面上做同样的事情,但是我无法弄清楚如何在colaboradores.nome
字段上输入id.colaborador (FK)
而不是它。
对不起,如果我不能清楚地说明自己。
这是带有$sql
查询的create.php
变量:
$sql = "INSERT INTO ativos (ativo,comentario,data_aquisicao,localizacao,fabricante,modelo,imei,
numero_serie,ativo_sap,evento,data_evento,id_colaborador)
SELECT ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, id_colaborador
FROM colaboradores
WHERE nome = ?";
这是$sql
的变量,其中包含对update.php
的查询:
$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 = ?";
谢谢您的时间!
更新:
我的意思是,是否有可能使update
代码与create
代码相似?
更新必须select
colaboradores.nome
才能替换id.colaborador (FK)
并保持WHERE id_ativo = ?
类似,我猜...
$sql = "UPDATE ativos SET ativo = ?, comentario = ?, data_aquisicao = ?, localizacao = ?, fabricante = ?, modelo = ?, imei = ?,
numero_serie = ?, ativo_sap = ?, anexo_a = ?, evento = ?, data_evento = ? SELECT id_colaborador FROM colaboradores
WHERE nome = ? AND WHERE id_ativo = ?";
答案 0 :(得分:1)
您需要使用PHP(例如下拉列表)生成一个列表,其中包含名称作为标签,id作为值。 因此,用户将能够在名称列表中进行选择。选择之后,您必须使用值(id)。
<form action="#" method="post">
<select name="Users">
<option value="1">Paul</option>
<option value="2">Pierre</option>
<option value="5">Marco</option>
<option value="8">Jean</option>
</select>
<input type="submit" name="submit" value="Get Selected Values" />
</form>
然后使用PHP检索ID
<?php
if(isset($_POST['submit'])){
$selected_val = $_POST['Users']; // Storing Selected Value In Variable
echo "You have selected :" .$selected_val; // Displaying Selected Value
}
?>