Jag har gjort ett bildsystem dr jag laddar upp bilder sen lägger till info om dem i en databs enligt följande typ såhär kanske... precis så var det jag vill ha det PussPuss ;) hur gör jag för att ta bilden innan då? Koden funkar ej Det saknas en blank framför order by Istället för att ställa flera fråger till databasen kan du hämta all information i första frågan som hämtar aktuell: ska man dock vara lite kinkig och anta att vi håller oss i asp Nu är du allt ute och cyklar. Man skickar ju en querysträng till sidan. Slår upp informationen om bilden, id för tidigare och id för nästa bild med ett recordset. hehe , sorry , det var jag som inte läste sql koden..ta reda på villken som är nästa i databsen i samma kate
| ID | kategori | bildtext | bildnamn |
nu så ska man få se en sida där men kan se EN bild sen ska man kunna trycka på nästa och då komma till nästa bild från samma katergori det går inte att ta ID + 1 då det kan finnas först en bild till kategori 1 sen en till kategori 2 sen en till kategori 1Sv: ta reda på villken som är nästa i databsen i samma
"select top(1) * from tabell where kategori=" & kategori & " and id > " & id & "order by id"
förutsatt att variablerna kategori och id är kategori och id för den bild du tittar på...
//RogerSv: ta reda på villken som är nästa i databsen i samma
Sv: ta reda på villken som är nästa i databsen i samma
"select top(1) * from tabell where kategori=" & kategori & " and id < " & id & "order by id" ?Sv: ta reda på villken som är nästa i databsen i samma
Set Conn = Server.CreateObject("ADODB.Connection")
Set RecSet = Server.CreateObject("ADODB.Recordset")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("admin\galleri.mdb")
SQL = "select top(1) * from bilder where namn=" & apas & " and id > " & apass & "order by id"
RecSet.Open SQL, Conn
felet:
SELECT-uttrycket innehåller ett reserverat ord eller argument som antingen är felstavat eller utelämnat, eller så är skiljetecknen felaktigt använda.
/ap/bild.asp, line 81Sv: ta reda på villken som är nästa i databsen i samma
SQL = "select top 1 * from bilder where namn=" & apas & " and id > " & apass & " order by id"
Vad är namn för datatyp? Om det är char så har du glömt ' kring värdet
SQL = "select top 1 * from bilder where namn='" & apas & "' and id > " & apass & " order by id"
Om du vill ha föregående så måste du vända på sorteringsordningen
SQL = "select top 1 * from bilder where namn='" & apas & "' and id < " & apass & " order by id desc"Sv: ta reda på villken som är nästa i databsen i samma
strSQL = "SELECT Main.*, " & vbCrLf _
" (SELECT Max(Sub.ID) FROM bilder AS Sub WHERE Sub.kategori=Main.kategori AND Sub.ID<Main.ID) as Previous, " & vbCrLf _
" (SELECT Min(Sub.ID) FROM bilder AS Sub WHERE Sub.kategori=Main.kategori AND Sub.ID>Main.ID) as Next" & vbCrLf _
"FROM bilder As Main" & vbCrLf _
"WHERE Main.ID = " & id Sv: ta reda på villken som är nästa i databsen i samma
och han ska visa en bild per sida så måste han ju det senare fallet lagra hela recordsettet i en session variabel för att det ska hålla state mellan sidrequestsen.
och lagra objekt i stessionvariabler är ju lite osnyggt med tanke på att de låser trådar i iis'en och fyller minnet på webservern...
jag röstar för att det är bättre att belasta databasen än att fylla webservern med massa objekt..
så lite state på webservern som möjligt är bra :)
//RogerSv: ta reda på villken som är nästa i databsen i samma
Vad kommer Sessions variabler in i bilden?
Behövs inte.Sv: ta reda på villken som är nästa i databsen i samma
antog att du hämtade alla info för en viss kategori och sedan lagrade undan den...
men så var ju inte fallet... det var jag som inte läste allt bara .. :P
sorry
//Roger