webForumDet fria alternativet
Logga in / Bli medlem

Visa ID

ASP

8 svar · 239 visningar · startad av corona

Medlem sedan feb. 200470 inlägg
Trådstart#1

Jag håller på med en liten databas som ska innehålla en bildbank där man ska kunna ladda upp två bilder med hjälp av AspUpload.

Nu undrar jag hur jag ska få det specifika IDet när jag matar in informationen om bilderna innan jag laddar upp bilderna. Frågan är om det går eftersom jag vill kunna relatera bilderna till den inmatade informationen.

Min kod:
<%
Dim RecSet, Addera, Omrade, Serie, Rubrik, Keywords

Omrade = Request("omrade")
Serie = Request("serie")
Rubrik = Request("rubrik")
Keywords = Request("keywords")

Set RecSet = Server.CreateObject("ADODB.Recordset")
Addera = "SELECT * FROM BildVisa"
RecSet.Open Addera, DB, adOpenStatic, adLockOptimistic

RecSet.AddNew
RecSet("Omrade") = Omrade
RecSet("Serie") = Serie
RecSet("Rubrik") = Rubrik
RecSet("KeyWords") = Keywords
RecSet.Update

' DETTA VISA EJ TYVÄRR
'Dim IDvisa
'IDvisa = RecSet("ID")
'Response.Write IDvisa

RecSet.Close
Set RecSet = nothing

%>

Informationen om bilderna ligger i en separat tabell och det uppladdade hamnar i två andra tabeller i databasen.

Blir jätteglad om någon kan tipsa mig hur jag ska göra.

/Annette

Medlem sedan feb. 200112 078 inlägg
#2

Du får göra en JOIN mellan tabellerna i SQL. Vad heter tabellen som innehåller informationen om bilderna, samt på vilken kolumn relaterar de till varandra?

Medlem sedan sep. 20026 425 inlägg
#3

En sak till bara: använd gärna [kod]-taggen. :)
Som OveRRidE skrev får du visa vilka kolumner som relaterar till varandra i dina databastabeller. :D

Medlem sedan feb. 200470 inlägg
#4

Hej igen!

Det var snabba svar.
Min informationstabell heter BildVisa där jag vill koppla IDet till tabellerna BildHigh (kolumn IDnr) och BildLow (Kolumn IDnr)

Nu är jag lite novis här, men var är kodtaggen eller hur gör jag när jag ska visa min kod här???

/Annette

Medlem sedan apr. 20003 174 inlägg
#5

Om jag fattat det rätt borde la detta fungera bra..

[red]<%

Dim Omrade, Serie, Rubrik, Keywords, RecSet, IDvisa

Omrade = Request("omrade")
Serie = Request("serie")
Rubrik = Request("rubrik")
Keywords = Request("keywords")

DB.Execute("INSERT INTO BildVisa(omrade, serie, rubrik, keywords) VALUES('"& Omrade &"','"& Serie &"','"& Rubrik &"','"& Keywords &"')"),,128
Set RecSet = DB.Execute("SELECT @@IDENTITY")
	IDvisa = RecSet(0)
	RecSet.Close
Set RecSet = Nothing

Response.Write "Informationens unika ID: "& IDvisa

'// Spara dina bilder här med informationens unik ID som referens..

%>[/red]
Medlem sedan feb. 200470 inlägg
#6

Tack, nu fungerar det, men nu är jag väl inte en riktig hejare på ASP, men försöker att hela tiden lära mig.
Så jag undrar bara om det går bara att få en förklaring vad ("SELECT @@IDENTITY") står för och varför RecSet (0) har en nolla inför parantesen?
/Annette

Medlem sedan sep. 20026 425 inlägg
#7

RecSet(0) kan du använda för att plocka ut ett fälts värde i databasen. Exempelvis så här:

Set Rs = Cn.Execute("SELECT Count(falt) FROM tabell")

...

Response.Write(Rs(0))

Nollan talar om att det är det lägsta "indexet" man hämtar från den aktuella databastabellen. Skulle du ha fler fält så kan du även komma åt dem med Rs(1), Rs(2) m.m., men det är lättare att skriva Rs("Fältnamn") i stället. :)

@@IDENTITY har jag för mig man använder när man vill skriva ut värdet i ett fält man precis satt in/redigerat/raderat i en databastabell. Exempelvis så här tror jag:

INSERT INTO tbl (falt) VALUES ('Värde')
SELECT @@IDENTITY

Rätta mig om jag har fel. ;)

Medlem sedan feb. 200470 inlägg
#8

Tack för ditt svar. Då förstår jag lite bättre vad dert innebär med SELECT @@IDENTITY och RecSet(0)

/Annette

Medlem sedan juni 200032 967 inlägg
#9

@@IDENTITY har jag för mig man använder när man vill skriva ut värdet i ett fält man precis satt in/redigerat/raderat i en databastabell

Nästan. @@IDENTITY får ett värde vid insert endast.

mvh

261 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)