从数据库配对人

时间:2015-12-13 16:12:49

标签: php arrays mysqli random

我必须创建一个按钮,如果单击该按钮,则必须在我的数据库中称为“inschrijvingen”的每个Name配对。但是不能有双重对。

所以例子;

我的数据库中有'John','Eric','Chelsea'和'Peter'(“Inschrijvingen”)。 然后,如果点击按钮,我必须得到类似的东西:

John必须为Eric买一件礼物

埃里克必须为切尔西买礼物

切尔西必须为彼得买礼物

彼得必须为约翰买一件礼物

如果约翰登录,他会看到他必须为Eric买一件礼物,以及Eric想要的礼物。

我不知道如何做到这一点,但我听说过有关阵列,Sessions和Shuffle又名Random()的内容。

  • 我的数据库名称是“Inschrijvingen”
  • 我的会话名为'adminsession'
  • 数据库“Inschrijvingen”有IDNamepasswordagepresent

希望你能帮助我3天以上我一直在努力。

1 个答案:

答案 0 :(得分:0)

假设您的用户ID为0到20,那么:

$numbers = range(0, 20);
shuffle($numbers);

foreach ($numbers as $buyer => $recipient) {
    //SET BUYER AND RECIPIENT TO TABLE
}

创建与presentsbuyer_id混合的联接表ecipient_id,如上面的代码中那样,然后当您想要显示一个人的信息时,他们只是购买:

SELECT name FROM users 
WHERE user_id = (SELECT recipient_id FROM presents WHERE buyer_id = BUYER_ID LIMIT 1)