webForumDet fria alternativet

Frågor om kompisfunktion

ASP

7 svar · 191 visningar · startad av Hazze

Medlem sedan jan. 20002 453 inlägg
Frågan#1

Jag har en funktion som gör att medlemmarna på sajten kan skapa "kompisrelationer" med varandra. Problemet är att man skapa en relation med sig själv. Dessutom kan man skapa flera kompisrelationer med samma medlem. Undrar hur jag ska göra för att hindra medlemmarna ha skapa relationen med sig själv samt ha flera relationer med samma medlem.

Koden ser ut såhär:

<% 
Set Databas = Server.CreateObject("ADODB.Connection")
Set Databas2 = Server.CreateObject("ADODB.Connection")
MdbFilePath = Server.MapPath("medlemmar.mdb")
MdbFilePath2 = Server.MapPath("mess.mdb")
Databas.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ= " & MdbFilePath & ";"
Databas2.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ= " & MdbFilePath2 & ";" 
SQL = "INSERT INTO kompisar "
SQL = SQL & "(username, kompis) "
SQL = SQL & "VALUES('" & Session ("namn") & "', '" & Request.QueryString("login") & "')" 
SQL2 = "INSERT INTO meddelande ([fran], [datum], [meddelande], [rubrik], [till], [status]) VALUES('" & Session("namn") & "',#" & now & "#,'Medlemmen " & Session("namn") & " har kompis med dig. ','Kompis!','" & Request.QueryString("login") & "','Oläst')" 
set rsKompis=Databas.execute(SQL)
set rsMess=Databas2.execute(SQL2) 
%>

Någon som har en idé? :)

------------------
It aint over until the fat lady sings...

Medlem sedan maj 20011 312 inlägg
#2

Du får öppna databasen och hämta den gamla adresslistans ID till att börja med. Sen gör du en if-sats helt enkelt av det.

IF NOT session("Sin egenID eller hur du har det sparat") OR kompis("ID") THEN
Uppdatera kompislista

------------------
Alltid lär man sig något nytt varje dag...

Medlem sedan maj 20011 312 inlägg
#3

Ett råd är dock att spara Kompis-id:na i en array som du loppar ut. KÄnner att jag inte var så tydlig...hinner inte svara mer men testa lite, lyckas du inte så fråga igen...:)

------------------
Alltid lär man sig något nytt varje dag...

Medlem sedan jan. 20002 453 inlägg
#4

Tack för svaret. Har försökt trixa lite med en liknande if-sats som du gav mig. Får dock inget resultat.

Någon som har någon kod att dela med sig? :)

------------------
It aint over until the fat lady sings...

Medlem sedan jan. 2000640 inlägg
#5

err, är det inte bara att kolla om en likadan post skapats, typ försöka öppna databasen med relationerna, och sen.

If RecSet.Eof then skapaennyrelation

eller?

------------------
/Nils Wikberg
-"Law and order are for weak minds. Chaos requires management.

Medlem sedan dec. 20003 563 inlägg
#6

Då testar vi såhär. Självklart otestat. ;)

<% 
Set Databas = Server.CreateObject("ADODB.Connection")
Set Databas2 = Server.CreateObject("ADODB.Connection")

MdbFilePath = Server.MapPath("medlemmar.mdb")
MdbFilePath2 = Server.MapPath("mess.mdb")

Databas.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ= " & MdbFilePath & ";"
Databas2.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ= " & MdbFilePath2 & ";" 

Set check = Databas.execute("SELECT * FROM kompisar WHERE username = '"&session("namn")&"' AND kompis = '"&request.querystring("login")&"'  ")

if check.eof AND session("namn") <> request.querystring("login") then

SQL = "INSERT INTO kompisar "
SQL = SQL & "(username, kompis) "
SQL = SQL & "VALUES('" & Session ("namn") & "', '" & Request.QueryString("login") & "')" 

SQL2 = "INSERT INTO meddelande ([fran], [datum], [meddelande], [rubrik], [till], [status]) VALUES('" & Session("namn") & "',#" & now & "#,'Medlemmen " & Session("namn") & " har kompis med dig. ','Kompis!','" & Request.QueryString("login") & "','Oläst')" 

set rsKompis=Databas.execute(SQL)
set rsMess=Databas2.execute(SQL2) 

else
	' Det här funkade inte
end if
%>

------------------
MVH // Cyprys
Cyprys
Synd att du inte kan köpa en voodoojordglob och sedan snurra på den fort som fan och skrämma skiten ur alla.

Medlem sedan jan. 20002 453 inlägg
#7

Cyprys, det fungerar utmärkt. Tackar!

------------------
It aint over until the fat lady sings...

Medlem sedan dec. 20003 563 inlägg
#8

så lite så.. ;)

------------------
MVH // Cyprys
Cyprys
Synd att du inte kan köpa en voodoojordglob och sedan snurra på den fort som fan och skrämma skiten ur alla.

265 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
136 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)