将数据库中的人配对


Pair up people from database

我必须制作一个按钮,如果单击该按钮,它必须将我的数据库中名为"的每个Name配对;inschrijvingen";。但是不可能有双对。

举个例子;

我的数据库中有"约翰"、"埃里克"、"切尔西"answers"彼得"("Inschrijvingen")。然后,如果点击按钮,我必须得到这样的东西:

约翰必须给埃里克买礼物

孙要给切尔西买礼物

切尔西必须给彼得·买一份礼物

彼得得给约翰买礼物

例如,如果John登录,他会看到他必须为Eric买礼物,以及Eric想要什么样的礼物。

我不知道如何做到这一点,但我听说了一些关于数组、会话和Shuffle(又名Random())的内容。

  • 我的数据库名称是";Inschrijvingen"
  • 我的会话名为"adminsession"
  • 数据库";Inschrijvingen"具有IDNamepasswordagepresent

希望你能帮助我,我已经挣扎了三天多了。

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

$numbers = range(0, 20);
shuffle($numbers);
foreach ($numbers as $buyer => $recipient) {
    //SET BUYER AND RECIPIENT TO TABLE
}

像上面的代码一样,用buyer_idecipient_id shuffle创建联接表presents,然后当你想向购买礼物的人显示信息时:

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