webForumDet fria alternativet

länkar

25 svar · 478 visningar · startad av MizzK · sida 2 av 2

MizzKMedlem sedan juni 2003410 inlägg
#21

det jag har gjort nu är att jag har lagt in koden plus skapat en db som heter meny.mdb.. men när jag kör det så får jag upp detta fel meddelande..

ADODB.Recordset (0x800A0CC1)
Objektet kunde inte hittas i mängden med det begärda namnet eller numret.
/ny/meny/meny.asp, line 31

linen motsvarar länken..

attributen i db är id|cat|ucat|meny|url

MizzKMedlem sedan juni 2003410 inlägg
#22

läst riktigt noga nu, men blev inte så mkt klokare på det här med db.. jag förstår det med if satser och så.. men detta med db hmmm

@ndersMedlem sedan juni 200032 969 inlägg
#23

MizzK skrev:

ADODB.Recordset (0x800A0CC1)
Objektet kunde inte hittas i mängden med det begärda namnet eller numret.
/ny/meny/meny.asp, line 31

Felmeddelandet betyder att du försöker använda värdet från ett fält som inte finns i recordsetet. Kolla så du stavat rätt och verkligen har med fältet i din SELECT-fråga.

Mvh

mikulMedlem sedan aug. 20013 824 inlägg
#24

@nders skrev:

mikul skrev:

Du kan läsa den här artikeln där jag går igenom request-objektet så du får lite mer kött på benen ;)
http://www.aspsidan.nu/default.asp?page=readArticle&menu=2&aId=12

Lycka till!

Du har inte testat kodexemplen där helt och fullt? ;)

Nej, det har jag fömodligen inte gjort :e
Jag skrev artiklarna under en tid då jag inte hade nån webserver tillgänglig :e

NickemannenMedlem sedan aug. 20003 575 inlägg
#25

Det där med databaser tar lite längra att förklara men jag har líte tid att slå ihjäl innan hockeymatchen :D.

produkt.asp?cat=prod&ucat=dockning

Det jag tror att detta betyder är en lista på Kategorier och produkter. cat = överkategori, ucat = underkategori ?
eller om ucat kanske är lika med produkten ?

I vilket fall som helst så behöver du ju en databas med olika tabeller.
Ex.

Products:
Product_Id Räknare
Product_Name 'Char eller textfält
Product_Belongsto_Ucat
(Oså lite andra fält som beskriver produkten i sig.)

uCat
uCatId 'Räknare
uCat_Name 'Char eller textfält
uCat_BelongstoCat_id

Cat
Cat_Id 'Räknare
Cat_Name 'Char

man kan göra index istället för att lägga in relationerna direkt i entiteterna.

En sak som kan förbättra allt är att istället för ha namnen i querystringen "cat=prod" så är det mer optimalt för sökningarna i databasen med "cat=1" så vet ju databasen sedan om att det är prod 1 betyder eller liknande.

Så först har vi en sida som listar alla överkategorier.
Chansar på att du använder Ms Accsess annars är det bara att byta ut databas kopplingen.

Sida: categories.asp

<%
Dim objConn, objRs, strSql

' Databas kopplingen
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\somepath\mydb.mdb;") 

strSql = "Select * From Cat Order by Cat_Name;"
Set Rs = objConn.Execute(strSql)

Do until Rs.Eof

Response.Write "<a href=""ucat.asp?cat="&Rs("cat_id")&""">"&Rs("Cat_Name")&"</a><br>"
""

Rs.MoveNext()
Loop

Set Rs = Nothing
objConn.Close()
objConn = Nothing
%>

Nästa sida fungerar ungefär likadant bara det att vi tar emot ett värde från querystringen och sätter ett vilkor i selectsatsen samt ändrar lite på den. Plus att vi byternamn på filen som det skall länkas till.
Sida: ucat.asp

<%
Dim objConn, objRs, strSql, intCatId

intCatId = CInt(Request.QueryString("cat"))

if IsNumeric(intCatId) then

' Databas kopplingen
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\somepath\mydb.mdb;") 

strSql = "Select * From Ucat where uCat_BelongstoCat_id = "&intCatId&" Order by Cat_Name;"
Set Rs = objConn.Execute(strSql)

Do until Rs.Eof

Response.Write "<a href=""product.asp?cat="&intCatId&"&ucat="&Rs(uCat_Id)&""">"&Rs("uCat_Name")&"</a><br>"
""

Rs.MoveNext()
Loop

objConn.Close()
Else
Response.Redirect("cat.asp")
End If
%>

Sida 3 fungerar exakt likadant men där så radar du upp alla produkter istället.. hoppas att du klarar att göra den själv efter detta.

MizzKMedlem sedan juni 2003410 inlägg
#26

tack så mkt.. ska försöka sätta mig in i detta... =)

129 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)