Principe "Friends"

Répondre
Muxy
le 29/07/2006 à 10:06
Muxy
Bonjour,

Je me demandais comment envisager de créer un systeme de "friends" entre les membres d'un site

Il s'agit du même principe que sur Myspace

Un membre solicite un autre qui accepte ou non après réception d'un avis. Si oui il apparait dans sa liste d'amis

Je ne vois pas trop comment cela peut fonctionner au niveau de la base de données

Si vous avez des suggestions

Merci et bonne journée

Vinz
www.muxy.org
Débutant mais motivé !
Bzh
le 29/07/2006 à 11:54
Bzh
Bin juste une table qui gère les amis. Je vois pas où c'est compliqué.

La table contient:

->ID => l'id de l'enregistrement
->id_ami_1 => l'id du membre qui demande une amitié
->id_ami_2 =>l'id de l'ami qui a été invité
->accepté => Variable bool (binaire) qui indique si l'invit a été accepté
->date =>La date


Voili.... Je te laisse réfléchir là dessu un tit peu.
Lefounard
le 29/07/2006 à 19:12
Lefounard
petite precision : quand tu demandes une invitation a un membre d'etre ton ami, il faut que dans le script tu verifie que le couple id_toi et id_pote ne soit pas deja present.

Exemple :
Jacques ajoute Pierre
Pierre accepte
Pierre ajoute Jacques // C'est pour eviter ce genre de schema, sinon dans la table tu te retrouveras avec un meme couple supplémentaire donc
au lieu de ID enregistrement comme clé primaire, tu prends le couple id_ami1,id_ami2 qui va composer la clé primaire, mais ca evitera les doublons, mais faudra aussi verifier dans ton script pour le cas que je t'ai donner precedement que le clé primaire couple (id1,id2) ne soit pas deja presente sous (Pierre,Jacques) ou (Jaacques,Pierre)
Arf c'est pas tres clair !
Ciao,
I am singing in the rain , I am happy again !!
Muxy
le 02/08/2006 à 10:27
Muxy
Mais c'est très clair oui !!!

Je ne sais pas pourquoi je bloquais la dessus

Merci à vous 2 en tous cas

Je vous tiens au courant quand mon site sera en ligne

Bonne journée

Vinz
www.muxy.org
Débutant mais motivé !
Bzh
le 02/08/2006 à 20:19
Bzh
Oki ! On attends alors !

Bonne continuation ! Bye...
Muxy
le 19/08/2006 à 01:11
Muxy
Alors en fait j'ai fait ca :

id-> clé primaire (autoinc)

id_ask -> le demandeur (ca peut tjrs servir de savoir qui a fait la demande d'amitiés lol)

id_SOL -> le sollicté

statut -> si la requete est en cours (permet d'afficher chez le membre sollicté une notification)

reponse -> enum(oui/non) (il est méchant si il dit non!)

Date-> date de la requete

Quand un membre fait la demande d'amitiés :

- on fait un SELECT count(*) FROM friends WHERE id_ask=$ma_session AND id_sol=$membresol;

Si on a pas de retour positif on en fait une deuxième avec l'inverse soit :

SELECT count(*) FROM friends WHERE id_ask=$membresol AND id_sol=$ma_session;

Et a chaque fois je vérfie que le membre n'a pas deja été rejetté avec reponse=0

Cela vous parait-il correct et logique ou puis-je me simplifier la vie ?

Je ne me suis jamais autant cassé la tete, mais c'est parce que je n'ai jamais vu de Howto sur ce sujet aussi :-)

Encore merci pour votre aide

Je vous promet que le site va etre sympa, je vous donne l'adresse dès que tout est en ligne

Bonne soirée à tous
Débutant mais motivé !
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours