Avatar billede zeth2610 Nybegynder
11. januar 2005 - 23:55 Der er 47 kommentarer

Hvordan kan jeg hente fra en bestemt kategori?

Hej med jer :)

Jeg leger med et lille linksystem..

Så hvordan kan jeg f.eks hente links KUN fra "elektronik", når man klikker på linket "elektronik"? Og Hvordan kun "fitness" når man trykker på "fitness" linket?

Jeg har tilføjet flg. i min db:
id
kategori
navn
beskrivelse
dato


Er der nogen som kan hjælpe mig?

På forhånd tak! :D
Avatar billede kalp Novice
12. januar 2005 - 00:02 #1
Du skal lave en del rettelser i hvertfald.. lettere hvis du allerede har lidt kode som du vil have ordnet:)

men din sql sætning kan se sådan her ud
strSQL = "SELECT * FROM Tabel WHERE kategori = '"& type &"'"

og type er så det man skal hive ud af URL'en.. og henter det på denne måde

<%type = request.querystring("type")%>
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 00:07 #2
<%type = request.querystring("type")%>

Hvor skal denne smides ind?

Undskyld de dumme spørgsmål.. Er ikke så god endnu med ASP programmering! Er lige begyndt! :-D
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 00:08 #3
og i "type" hvad skal der stå der istedet?

Jeg har koden, men jeg vil bare hente kun reklamer fra f.eks kategori "elektronik" istedet for den bare smider alle ud på en side blandet.
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 00:09 #4
<% strSQL = "SELECT * FROM reklame_tabel WHERE kategori= "& Request.QueryString("kategori") &" " %>

Er den korrekt?
Avatar billede kalp Novice
12. januar 2005 - 00:14 #5
ja så kommer dit link til at se sådan her ud

http://www.url.dk/dinaspside.asp?kategori=elektronik

:)

og du kan bare smide <%type = request.querystring("type")%>
over din database kald.
Avatar billede kalp Novice
12. januar 2005 - 00:15 #6
og du må undskylde hvis jeg er langsom, men får af en eller anden grund ikke mails når der bliver postet svar men kigger ind løbende! bare rolig:)
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 00:15 #7
Dette er min kode til vis:


<html>
<head>
    <title>Se Reklame</title>

<meta name="Generator" content="Stone's WebWriter 4">
</head>
<body>


<% Set ConnObj = Server.CreateObject("ADODB.Connection") %>
<% MyConnStr = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../db/reklame.mdb") %>
<% ConnObj.Open(MyConnStr) %>

<% strSQL = "SELECT * FROM reklame_tabel " %>
<% strSQL = strSQL & "ORDER BY id DESC" %>
<% Set rs = ConnObj.Execute(strSQL) %>

<% Do Until rs.EOF %>


<font face="verdana" size="1">
<u><b><%=rs("navn")%></b></u><br>
<%=rs("Beskrivelse")%><br><br>
<b>Tilføjet den: </b> <%=rs("dato")%>
</font>
<br><br><br>





<% rs.MoveNext %>
<% Loop %>

<% rs.Close %>
<% Set rs = Nothing %>

</body>
</html>


Hvad skal linket forresten hedde?

vis_reklame.asp?kategori=den_valgte_kategori

?? :)
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 00:18 #8
<html>
<head>
    <title>Se Reklame</title>

<meta name="Generator" content="Stone's WebWriter 4">
</head>
<body>

<%kategori = request.querystring("kategori")%>

<% Set ConnObj = Server.CreateObject("ADODB.Connection") %>
<% MyConnStr = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../db/reklame.mdb") %>
<% ConnObj.Open(MyConnStr) %>

<% strSQL = "SELECT * FROM reklame_tabel WHERE kategori= "& Request.QueryString("kategori") &" " %>
<% strSQL = strSQL & "ORDER BY id DESC" %>
<% Set rs = ConnObj.Execute(strSQL) %>

<% Do Until rs.EOF %>


<font face="verdana" size="1">
<u><b><%=rs("navn")%></b></u><br>
<%=rs("Beskrivelse")%><br><br>
<b>Tilføjet den: </b> <%=rs("dato")%>
</font>
<br><br><br>





<% rs.MoveNext %>
<% Loop %>

<% rs.Close %>
<% Set rs = Nothing %>

</body>
</html>

Sådan er den nu.. Men nu kommer den med fejl:
Fejltype:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
[Microsoft][ODBC Microsoft Access-driver] Der er for få parametre. Der var ventet 1.
/Robin/wwwroot/reklame/vis_reklame.asp, line 18
Avatar billede kalp Novice
12. januar 2005 - 00:21 #9
koden skal ikke være på selve den side hvor hver reklame bliver vist.. men på den side hvor listen over reklamer er.. ser ud til at være på din visreklame side
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 00:22 #10
Nåå.. Sorry.. Prøver lige om jeg kan få det til at funke.

Skriver herinde om et par minutter igen :-D


Og tak fordi du gider hjælpe.
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 00:27 #11
Den laver fejl.. :(

Koden:

<html>
<head>
    <title>Kategorier</title>

<meta name="Generator" content="Stone's WebWriter 4">
</head>
<body>

<%kategori = request.querystring("kategori")%>

<% Set ConnObj = Server.CreateObject("ADODB.Connection") %>
<% MyConnStr = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../db/reklame.mdb") %>
<% ConnObj.Open(MyConnStr) %>

<% strSQL = "SELECT * FROM reklame_tabel WHERE kategori= "& Request.QueryString("kategori") &" " %>
<% strSQL = strSQL & "ORDER BY id DESC" %>
<% Set rs = ConnObj.Execute(strSQL) %>

<% Do Until rs.EOF %>

<a href="vis_reklame.asp?kategori="<%=rs("kategori")%>"><%=rs("kategori")%></a><br>



<% rs.MoveNext %>
<% Loop %>

<% rs.Close %>
<% Set rs = Nothing %>

</body>
</html>


Fejlen:
Fejltype:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access-driver] Der er en syntaksfejl, fordi der mangler en operator. i forespørgselsudtrykket "kategori=".
/Robin/wwwroot/reklame/vis_kategorier.asp, line 18


Hvad gør jeg galt?
Avatar billede kalp Novice
12. januar 2005 - 00:29 #12
du skal jo huske at skrive url adressen:)

altså

http://www.url.dk/vis_kategorier.asp?kategori=ENKATEGORI
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 00:31 #13
Vis kategorier: http://62.66.134.178/Robin/wwwroot/reklame/vis_kategorier.asp

tilfoj reklame: http://62.66.134.178/Robin/wwwroot/reklame/tilfoj_reklame.asp

vis reklame: http://62.66.134.178/Robin/wwwroot/reklame/vis_reklame.asp

Jamen jeg kan slet ikke finde ud af at fremkalde kun de enkelte reklamer på den kategori man vil have...
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 00:33 #14
Skulle jeg havde gjort kategori til primærnøgle istedet for id?
Avatar billede kalp Novice
12. januar 2005 - 00:34 #15
nej det behøves ikke.. jeg skal lige vågne engang her er lidt træt hehe
vi skal nok finde ud af for har sgu selv et system som bruger det! to sekunder
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 00:36 #16
Ok mange tak.. Jeg vil jo forresten gerne kunne tilføje flere links ind under hver kategori, hvordan laver man det? For nu tilføjer den bare kategorien 2 gange.. Hehe! Skal jeg så lave en tabel med hver kategori? eller?
Avatar billede kalp Novice
12. januar 2005 - 00:38 #17
okay har lige kigget på dine side.. og sorry blev lidt forvirret uden at kunne se det for mig men du har ret angående det med vis reklame.. sql sætningen skal være der!
Avatar billede kalp Novice
12. januar 2005 - 00:41 #18
lad os gøre det lidt mere overskueligt(for mig i hvertfald hehe)

ændre

<%kategori = request.querystring("kategori")%>

til

<%typen = request.querystring("type")%>

og
<% strSQL = "SELECT * FROM reklame_tabel WHERE kategori= "& Request.QueryString("kategori") &" " %>

til ...du skal ikke skrive request querystring

strSQL = "SELECT * FROM reklame_tabel WHERE kategori = '"& typen &"'"
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 00:46 #19
vis_kategorier.asp:


<html>
<head>
    <title>Kategorier</title>

<meta name="Generator" content="Stone's WebWriter 4">
</head>
<body>

<%typen = request.querystring("type")%>

<% Set ConnObj = Server.CreateObject("ADODB.Connection") %>
<% MyConnStr = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../db/reklame.mdb") %>
<% ConnObj.Open(MyConnStr) %>

<% strSQL = "SELECT * FROM reklame_tabel WHERE kategori= "& typen &"'" %>
<% strSQL = strSQL & "ORDER BY id DESC" %>
<% Set rs = ConnObj.Execute(strSQL) %>

<% Do Until rs.EOF %>

<a href="vis_reklame.asp?kategori=<%=rs("kategori")%>"><%=rs("kategori")%></a><br>



<% rs.MoveNext %>
<% Loop %>

<% rs.Close %>
<% Set rs = Nothing %>

</body>
</html>



Og vis_reklame.asp:


<html>
<head>
    <title>Se Reklame</title>

<meta name="Generator" content="Stone's WebWriter 4">
</head>
<body>
<%typen = request.querystring("type")%>


<% Set ConnObj = Server.CreateObject("ADODB.Connection") %>
<% MyConnStr = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../db/reklame.mdb") %>
<% ConnObj.Open(MyConnStr) %>

<% strSQL = "SELECT * FROM reklame_tabel WHERE kategori= "& typen &"'" %>

<% strSQL = strSQL & "ORDER BY id DESC" %>
<% Set rs = ConnObj.Execute(strSQL) %>

<% Do Until rs.EOF %>


<font face="verdana" size="1">
<u><b><%=rs("navn")%></b></u><br>
<%=rs("Beskrivelse")%><br><br>
<b>Tilføjet den: </b> <%=rs("dato")%>
</font>
<br><br><br>





<% rs.MoveNext %>
<% Loop %>

<% rs.Close %>
<% Set rs = Nothing %>

</body>
</html>



Men den siger fejl på begge :(
Avatar billede kalp Novice
12. januar 2005 - 00:50 #20
det her

<% Set ConnObj = Server.CreateObject("ADODB.Connection") %>
<% MyConnStr = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../db/reklame.mdb") %>
<% ConnObj.Open(MyConnStr) %>

<% strSQL = "SELECT * FROM reklame_tabel WHERE kategori= "& typen &"'" %>

<% strSQL = strSQL & "ORDER BY id DESC" %>
<% Set rs = ConnObj.Execute(strSQL) %>



bør du have i samme <% %>

:) gør det lidt lettere:)
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 00:52 #21
<% Set ConnObj = Server.CreateObject("ADODB.Connection")
MyConnStr = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../db/reklame.mdb")
ConnObj.Open(MyConnStr)

strSQL = "SELECT * FROM reklame_tabel WHERE kategori= "& typen &"'"

strSQL = strSQL & "ORDER BY id DESC"
Set rs = ConnObj.Execute(strSQL) %>

Sådan?


men den laver stadig fejl
Avatar billede kalp Novice
12. januar 2005 - 00:53 #22
hvad siger den?
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 00:54 #23
Fejltype:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access-driver] Der er en syntaksfejl i strengen i forespørgselsudtrykket "kategori= 'ORDER BY id DESC".
/Robin/wwwroot/reklame/vis_reklame.asp, line 19

På begge 2..
Avatar billede kalp Novice
12. januar 2005 - 00:55 #24
ORDER BY id DESC". ?

har du det med i sætningen? fjern det foreløbig og kopir præcis min linie ind
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 00:58 #25
Siger stadig fejl...

Fejltype:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access-driver] Der er en syntaksfejl i strengen i forespørgselsudtrykket "kategori= '".
/Robin/wwwroot/reklame/vis_kategorier.asp, line 18

på begge 2
Avatar billede kalp Novice
12. januar 2005 - 01:02 #26
hmm... hvis du ikke har noget vigtigt i databasen kan du sende de 3 filer det drejer sig om så ordner jeg det lige.. har meget lettere ved sådan noget når det er foran mig. eller du kan give mig 5 min til at kigge det hele igennem fra toppen af så kan jeg måske se hvad vi mangler
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 01:03 #27
strSQL = "SELECT * FROM reklame_tabel WHERE kategori= "& typen &"'"

Det må være den fejlen ligger i.. Men hvad skal den ændres til?
Avatar billede kalp Novice
12. januar 2005 - 01:04 #28
hvordan så din kode ud før du overhovedet postede?
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 01:06 #29
html>
<head>
    <title>Se Reklame</title>

<meta name="Generator" content="Stone's WebWriter 4">
</head>
<body>


<% Set ConnObj = Server.CreateObject("ADODB.Connection") %>
<% MyConnStr = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../db/reklame.mdb") %>
<% ConnObj.Open(MyConnStr) %>

<% strSQL = "SELECT * FROM reklame_tabel " %>
<% strSQL = strSQL & "ORDER BY id DESC" %>
<% Set rs = ConnObj.Execute(strSQL) %>

<% Do Until rs.EOF %>


<font face="verdana" size="1">
<u><b><%=rs("navn")%></b></u><br>
<%=rs("Beskrivelse")%><br><br>
<b>Tilføjet den: </b> <%=rs("dato")%>
</font>
<br><br><br>





<% rs.MoveNext %>
<% Loop %>

<% rs.Close %>
<% Set rs = Nothing %>

</body>
</html>


Sådan så den ud til vis_reklame
Avatar billede kalp Novice
12. januar 2005 - 01:07 #30
Set rs = Server.CreateObject("ADODB.RecordSet")
if typen <> ""  then
strSQL = "SELECT * FROM reklame_tabel WHERE kategori = '"& typen &"'"
end if
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("../../db/reklame.mdb")
strSQL = StrSQL & " ORDER BY id DESC"
rs.Open strSQL, strDSN, 1


prøv lige det der
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 01:08 #31
Og der smider den jo bare alle links ind på en side... De skal være fordelt over kategorier.. Og jeg har tilføjet en i min .mdb fil som hedder kategorier (har skrevet øverst hvilke der er).

Men når jeg så tilføjer f.eks den samme kategori 2 gange, så kommer den jo bare  2 gange.. så skal jeg oprette forskellige tabeller for hver kategori?
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 01:09 #32
Du kan ikke skrive den hele kode til mig veL? er lidt i tvivl om hvad jeg skal udskifte.
Avatar billede kalp Novice
12. januar 2005 - 01:12 #33
html>
<head>
    <title>Se Reklame</title>

<meta name="Generator" content="Stone's WebWriter 4">
</head>
<body>

<%typen = request.querystring("type")%>
<%
Set rs = Server.CreateObject("ADODB.RecordSet")
if typen <> ""  then
strSQL = "SELECT * FROM reklame_tabel WHERE kategori = '"& typen &"'"
end if
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("../../db/reklame.mdb")
strSQL = StrSQL & " ORDER BY id DESC"
rs.Open strSQL, strDSN, 1
%>

<% Do Until rs.EOF %>


<font face="verdana" size="1">
<u><b><%=rs("navn")%></b></u><br>
<%=rs("Beskrivelse")%><br><br>
<b>Tilføjet den: </b> <%=rs("dato")%>
</font>
<br><br><br>





<% rs.MoveNext %>
<% Loop %>

<% rs.Close %>
<% Set rs = Nothing %>

</body>
</html>
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 01:15 #34
Fejltype:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E21)
ODBC-driver understøtter ikke de ønskede egenskaber.
/Robin/wwwroot/reklame/vis_reklame.asp, line 17
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 01:17 #35
Og hvis jeg f.eks prøver: http://62.66.134.178/Robin/wwwroot/reklame/vis_kategorier.asp?kategori=fitness

siger den denne fejl:
Fejltype:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access-driver] Der er en syntaksfejl i strengen i forespørgselsudtrykket "kategori= '".
/Robin/wwwroot/reklame/vis_kategorier.asp, line 18
Avatar billede kalp Novice
12. januar 2005 - 01:18 #36
typen=Request.QueryString("type")

sæt det ind lige over

Set rs = Server.CreateObject("ADODB.RecordSet")

og slet

<%typen = request.querystring("type")%>
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 01:20 #37
Så kom denne fejl:
Fejltype:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access-driver] Der er en syntaksfejl i strengen i forespørgselsudtrykket "kategori= '".
/Robin/wwwroot/reklame/vis_kategorier.asp, line 18
Avatar billede kalp Novice
12. januar 2005 - 01:24 #38
er ved at blive forvirret:/ i sidste ende kan du sende det eller jeg kan sende et eksempel som virker.

men du skriver vel ikke koden i vis_kategorier?

for den skal vi jo ikke rode ved fandt vi ud af:)
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 01:25 #39
Nej i "vis_reklame.asp" :-D

Sådan er den kode ligenu:
html>
<head>
    <title>Se Reklame</title>

<meta name="Generator" content="Stone's WebWriter 4">
</head>
<body>


<%
typen=Request.QueryString("type")
if typen <> ""  then
strSQL = "SELECT * FROM reklame_tabel WHERE kategori = '"& typen &"'"
end if
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("../../db/reklame.mdb")
strSQL = StrSQL & " ORDER BY id DESC"
rs.Open strSQL, strDSN, 1
%>

<% Do Until rs.EOF %>


<font face="verdana" size="1">
<u><b><%=rs("navn")%></b></u><br>
<%=rs("Beskrivelse")%><br><br>
<b>Tilføjet den: </b> <%=rs("dato")%>
</font>
<br><br><br>





<% rs.MoveNext %>
<% Loop %>

<% rs.Close %>
<% Set rs = Nothing %>

</body>
</html>
Avatar billede kalp Novice
12. januar 2005 - 01:27 #40
koden er bare rigtig som jeg ser den.. to sekunder.. finder lige et tidligere spørgsmål på eksperten hvor en fik løsning til samme problem..
Avatar billede kalp Novice
12. januar 2005 - 01:29 #41
http://www.eksperten.dk/spm/548776

ligner meget meget det jeg laver her
Avatar billede kalp Novice
12. januar 2005 - 01:30 #42
kig lige på det... virker det ikke .. send det til mig og så laver jeg det .. Du kan tjekke mine tidligere besvarede spørgsmål i ASP ..ender mest lykkeligt når jeg sidder med det hehe:)

men synes vi gør det rigtigt..
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 01:31 #43
Har du msn? :P
Avatar billede kalp Novice
12. januar 2005 - 01:38 #44
ja bare giv mig din email så tilføjer jeg dig med det samme
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 01:41 #45
rz@webspeed.dk :D
Avatar billede zeth2610 Nybegynder
12. januar 2005 - 01:41 #46
Det er msn :P
Avatar billede saudoo Nybegynder
19. januar 2006 - 10:46 #47
Det skal lige siges, at man ikke må lave hvad folk skulle have hjælp til, uden for eksperten.

F. eks. via MSN. :>
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
Kurser inden for grundlæggende programmering

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