簡體   English   中英

用其他字段更新PHP外鍵

[英]Update foreign key with other field PHP

我有一個php頁面,我可以在其中創建,更新並查看一些用戶,而在其他頁面中,我可以看到用戶的( colaboradores's table )項目( ativos's table ),它們與FK( id_colaborador )鏈接。
ativos創建頁面上,我設法輸入所有數據,而無需輸入FK itselv( id_colaborador ),用戶可以輸入用戶的名稱( colaboradores.nome )。
關鍵是,我想在UPDATE.PHP頁面上做同樣的事情,但我只是想不通如何在id.colaborador (FK)字段上輸入colaboradores.nome而不是...
對不起,如果我不能清楚地說明自己。
這是帶有查詢create.php$sql var:

$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 = ?";

這是帶有查詢update.php$sql var:

 $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 = ?";

您需要使用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
    }
?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM