Avatar billede denniswiencken Nybegynder
25. juni 2010 - 13:59 Der er 8 kommentarer

Hvis bruger id er i felt

Hej, er ved at lave en venneliste og det går sådan set meget godt, hver bruger har et felt der hedder 'buddy' i tabellen 'users' og her ligger id'erne til brugerens venner, altså fx 3,8,10 som altså betyder bruger med id=3 osv, men nu skal jeg have lavet en "anmod knap" og den skal jo selvfølgelig kun komme frem hvis de to brugere ikke er venner, så skal finde noget der siger, hvis den profil man ser på 's id er i feltet buddy hos den indloggede bruger skal den fx sige I er venner, hvis id'et ikke er der skal den vise min anmodningsknap (bare et link)

Håber i forstår :)
Avatar billede majbom Novice
25. juni 2010 - 14:16 #1
få fat i feltet buddy fra tabellen (og smid det i variablen $buddy)

if(in_array($brugerens_id, explode(",", $buddy))){
  echo "i er allerede venner";
}else{
  echo "<a href='request_friendship.php?id=$brugerens_id'>Anmod om vendskab</a>";
}
Avatar billede denniswiencken Nybegynder
25. juni 2010 - 14:17 #2
Fandt en løsning, undskylder meget :), hvis nogle skulle finde det brugbart:
$data er alle tabeller fra den indloggede bruger, $row er fra profilens ejer


    if($data['id'] == $row['id'])
    {
echo "din egen profil";
}
else{
    if($data['buddy'] != $row['id'])
{
echo "Anmod om venskab";
}}
Avatar billede denniswiencken Nybegynder
25. juni 2010 - 14:21 #3
splazz Kan ikke rigtigt få dit til at virke :/
Avatar billede denniswiencken Nybegynder
25. juni 2010 - 14:23 #4
Det virker nu, men nu skal jeg bare fjerne anmod om venskab når man ser sin egen profil :), synes bedre om din kode end min, den er lidt mere trimmet :)
Avatar billede ksoren Nybegynder
25. juni 2010 - 14:39 #5
Prøv evt google og database + normalisering

Det er generelt noget rod med sådanne kommaseparerede lister i en database.
Avatar billede danco Nybegynder
25. juni 2010 - 16:30 #6
Som udbygning til ksoren's kommentar vil jeg lige foreslå at du tilføjer en helt ny tabel med user_id som sammensat primær nøgle.

altså således at du får noget lignende

1 - 5
4 - 6
1 - 3
3 - 5
6 - 2

Det tror jeg også ville lette dine programmerings opgaver betydeligt.
Avatar billede julemandenb Nybegynder
25. juni 2010 - 16:48 #7
Jeg lavede min sådan er jeg havde en tabel der hed "venner"
i den tabel var felterne
id, user_id, ven_id,

hvis en bruger ansøgte en vil der så blive oprettet et felt
med id = 1 user_id = 46 ven_id == 62
hvis der kun fantes så ikke var en som var sammenligende
bare hvor user_id var = 62 og ven_id = 46
så vil id 62 få en anmodning.

HVIS han godkendte vil der være to tabeller i databasen
de vil se således ud.

id              user_id          ven_id
1              46              62
2              62              46

Hvis man så ønskede at slette en bruger som ven, så fjernede den bare begge to. :b

Det virkede upåklageligt (:
Avatar billede majbom Novice
04. november 2010 - 14:13 #8
var det meningen jeg skulle smide et svar?

hvis ikke ser du bare bort fra dette, men husk at få lukket spørgsmålet :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester