Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 与用户表相关的SQL外键_Php_Mysqli - Fatal编程技术网

Php 与用户表相关的SQL外键

Php 与用户表相关的SQL外键,php,mysqli,Php,Mysqli,我试图学习外键,并能够将数据从一个表关联到另一个表。所以我有一个用户表和一个卡片表 用户表具有“用户id”、“用户名”和“电子邮件”。 卡片表具有“卡片id”和“名称” 我要做的是将卡片从卡片表关联到用户。例如,如果卡片表中有Card1,而user1希望该卡片(或更多)与之关联,我将如何使用外键来实现这一点 以下是我目前如何选择和显示我的用户: <?php $sql = "SELECT user_id, username, email_address FROM u

我试图学习外键,并能够将数据从一个表关联到另一个表。所以我有一个用户表和一个卡片表

用户表具有“用户id”、“用户名”和“电子邮件”。 卡片表具有“卡片id”和“名称”

我要做的是将卡片从卡片表关联到用户。例如,如果卡片表中有Card1,而user1希望该卡片(或更多)与之关联,我将如何使用外键来实现这一点

以下是我目前如何选择和显示我的用户:

    <?php

        $sql = "SELECT user_id, username, email_address FROM user";
        $result = $conn->query($sql);

        if ($result->num_rows > 0) {

            // output data of each row
            while($row = $result->fetch_assoc()) {
            echo  
                $row["username"] . "<br>",
                $row["email_address"] . "<br><br>";
            }

        } else {
            echo "0 Members";
        }

        $conn->close();
    ?>


我知道在用户表中,我需要另一个单元格“card\u id”,但不确定这应该是哪种数据类型?

基于您的问题和您的以下评论:


因此,纸牌桌是指扑克牌。用户可以收集 这些卡片本质上成为用户卡片组的一部分。我想要 将卡与用户关联的方式

我相信你可以通过两种方式实现这一点,这取决于游戏/脚本中的进一步场景

场景1: 在这种情况下,一张卡只能属于一个用户。 将新字段添加到
卡片表中

`user_id` INT(11)
当用户收集卡时,只需更新该字段,以便它存储用户的id

场景2: 在这种情况下,一张卡可能属于多个用户。 创建一个名为
users\u cards
的新表:

users_card
- id (INT)
- user_id (INT)
- cart_id (INT)
当用户收集卡时,在该表中插入一条新记录,其中包含卡的id和用户的id


如果我正确理解了你的问题,因为卡号的值是数字(我相信),它的类型应该是INTWell,我也在想如何将用户与卡号关联?很难理解你的情况。你能在你的问题中举个例子吗?“卡片”代表什么?限制条件是什么?一个用户可以拥有多张卡,一张卡可以属于多个用户吗?因此,卡片表是指扑克牌。用户可以收集卡片,使其成为用户组的一部分。我想要一种将卡与用户关联的方法。作为参考,这是一个多对多联接表/中间表。