繁体   English   中英

使用主键从其他表获取措辞

[英]Get Wording from a different table with primary key

我有一个表,用于注册从工厂到客户的货物运输,在此表中,我只注册工厂和客户代码,但是我需要它们的名称才能显示在我的网页中。

我正在使用mysqli语句从表中获取数据。 我在树莓派服务器上的phphmyadmin上使用Mysql数据库。

我不想更改sql表中的任何内容,只希望更改显示在网页上。

<?php
    require '../include/header.php';
    require '../include/dbhandler.php';
?>
<!DOCTYPE html>

<html>
<head>
<meta charset="UTF-8">
<title>Gestion des contenant</title>
<link rel="stylesheet" href="../../style.css" />
</head>
<?php if(isset($_SESSION["username"])){
    echo'
<body>
<div><p> vue global des client </p></div>

    <form action="include/gestioncontenant.inc.php" method="post">
                <input type="text" name="clientName" placeholder="Nom du Client"/><br>
                <button type="submit" name="login-submit">Search</button>
    </form><br>';
        // Récupération de la table client
        $sql = "SELECT * FROM `mouvement` WHERE 1";

        $stmt = mysqli_stmt_init($conn);
        if (!mysqli_stmt_prepare($stmt, $sql) && isset($_SESSION["username"])) {
            header("location: ../gestioncontenant.php?error=sqlerror");
            exit();
        }
        else {
             mysqli_stmt_bind_param($stmt, "s", $clientName);
            mysqli_stmt_execute($stmt);
             $result = mysqli_stmt_get_result($stmt);
                echo '<table border="1">';
                echo "<tr><td>Code</td><td>Type</td><td>Date</td><td>Site de prod</td><td>Client</td><td>Contenant</td><td>Quantit&eacute;</td><td>Transporteur</td></tr>";  
            while($row = mysqli_fetch_assoc($result)){
                    echo "<tr><td>{$row["mouvement_code"]}</td><td>{$row["mouvement_type"]}</td><td>{$row["mouvement_date"]}</td><td>{$row["site_code"]}</td><td>{$row["client_code"]}</td><td>{$row["contenant_code"]}</td><td>{$row["contenant_quantite"]}</td><td>{$row["transporteur_code"]}</td></tr>\n";
                  }
        }
             echo"</table><br>"; 
}?>
<a href="../home.php"> retour</a>
</body>
</html>

在“移动”表中,我只有客户和工厂(站点)的ID(外键),并且需要显示名称。 我只使用html和php,但是如果它们是使用javascript或其他语言的解决方案,我将实现它。 谢谢!

您需要多解释一下其他表格的外观

我会假设你有这张桌子

MOVEMENT(client_code,site_code,mouvement_code,mouvement_type,contenant_code,ETC)

现在'client_code'是客户端的ID吗? 如果是,您是否有另一个这样的表格?

客户(客户名称,客户代码,ETC)

如果是,那么您只需要在请求中的两个表之间的clientID上进行联接:

SELECT a.*, b.client_name FROM `mouvement`a
left join 'client' b on a.client_code = b.client_code
WHERE conditions

然后将定义$ row ['client_name']并将其放入表中

编辑:

所以如果你有其他桌子

CONTENANT(contenant_name,contenant_code,ETC),

SITE(site_name,site_code,ETC),查询变为:

SELECT a.*, b.client_name, c.contenant_name, d.site_name FROM `mouvement`a
left join 'client' b on a.client_code = b.client_code
left join 'contenant' c on a.contenant_code = c.contenant_code
left join 'site' d on a.site_code = d.site_code
WHERE conditions

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM