2015-12-13 2 views
0

Je dois faire un bouton et si ce bouton est cliqué, il doit jumeler tous les Name dans ma base de données appelée "inschrijvingen". Mais il ne peut pas y avoir de doubles paires.PHP - Jumeler des personnes de la base de données

Par exemple;

J'ai "John", "Eric", "Chelsea" et "Peter" dans ma base de données ("Inschrijvingen"). Ensuite, si le bouton est cliqué je dois obtenir quelque chose comme:

John doit acheter un cadeau pour Eric

Eric doit acheter un cadeau pour Chelsea

Chelsea doit acheter un cadeau pour Peter

Peter doit acheter un cadeau pour John

et si par exemple John se connecte, il voit qu'il doit acheter un cadeau pour Eric, et quel genre de présent Eric veut.

Je n'ai aucune idée de comment faire cela mais j'ai entendu quelque chose à propos de tableaux, Sessions et Shuffle alias Random().

  • Mon nom de base de données est "Inschrijvingen"
  • Ma session est appelée 'adminsession'
  • La base de données "Inschrijvingen" a ID, Name, password, age, present

EDIT: Ceci est ma nouvelle et meilleure explication. J'espère que vous pouvez m'aider, j'ai lutté avec cette forover 3 jours.

+1

Alors, que demandez-vous comment commencer? Savez-vous quel code utiliser pour se connecter à MySQL depuis PHP? Savez-vous comment écrire une requête SQL? Savez-vous comment exécuter une instruction SQL select en PHP pour obtenir les données dont vous avez besoin avec mySQL? J'essaie de comprendre où vous en êtes afin que nous puissions vous aider. Donc, si vous pouvez utiliser les questions que je viens de poser comme guide et montrer ce que vous avez pour cela, ou ce que vous n'avez pas dans ces parties, cela vous aidera. Merci. – Trevor

+0

Oui, je connais toutes ces choses. Le problème est; Je n'ai pas de code à afficher parce que je ne sais pas comment faire un tableau des utilisateurs dans ma base de données et c'est la première étape. Après que je dois les mélanger et je ne sais pas comment faire cela – Basclay

+0

C'est le défi avec votre question. Ma question: "Savez-vous comment exécuter une instruction SQL select en PHP pour obtenir les données dont vous avez besoin de mySQL?" est la partie qui place les données dans un tableau. La meilleure chose à faire est Google php mysqli requête result to array. Le défi avec ce site, ce n'est pas un forum de discussion qui est mieux adapté à votre type de question où il y a une conversation aller-retour. – Trevor

Répondre

0

Supposons que vous avez des utilisateurs avec id 0 à 20 puis:

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

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

Créer une table de jointure presents avec buyer_id et ecipient_id lecture aléatoire comme dans le code ci-dessus, lorsque vous voulez afficher une information de personne pour qui achète présent juste:

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

Mais il doit vérifier combien d'ID j'ai dans ma base de données. Et que signifie le destinataire? – Basclay

+0

Le destinataire est une personne à envoyer présente.buyer_id et recipient_id sont juste l'identifiant des utilisateurs, les noms montrant les rôles en relation. vous pouvez créer un tableau juste en sélectionnant id de la base de données: SELECT ID FROM utilisateurs puis foreach $ users [ID] = ID, et shuffle suivant pour changer la clé, ID valeur, aussi vous devriez vérifier si quelqu'un ne se retrouve pas, si, shuffle again, ou juste changer avec l'index suivant. – pmaniora

+0

J'apprécie vraiment vraiment votre aide, mais je ne comprends toujours pas comment attraper les utilisateurs de ma table, puis les mélanger. Je ne sais pas non plus comment la personne qui se connecte peut voir pour qui il doit acheter un cadeau. Je pense que je vais juste accepter ma note inférieure parce que c'est impossible pour moi. – Basclay