/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Problemer med variabel i SQLsætning
Fra : kurt-overgaard-ander~


Dato : 27-11-04 22:04

Kan nogen give mig en idé om hvor fejlen ligger i følgende:

Jeg har en variabel som jeg gerne vil bruge i en SQlstreng for at
filtrere de poster hvor TYPE = varialen

- Variablen overføres fint til dokumentet
- Jeg kan fint sortere med "Type LIKE 'Kladde'" Qtype (som også
er lig med Request.QueryString("Type")

men når jeg vil indsætte indholdet af variablen Qtype og sortere
efter går det galt.

Hvordan bruger man den korrekt i SQL'en?

<%
Set artikel = Server.CreateObject ("ADODB.Recordset")
set Qtype = Request.QueryString("Type")

artikel.Open "SELECT * FROM INDLAEG WHERE Type LIKE 'Kladde'
ORDER BY ID desc" & tid, database

response.write Request.QueryString("Type")
response.write "<BR>"
response.write Qtype
response.write "<BR>"
%>

i håb om assistance...

Mvh Kurt


--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
terje (27-11-2004)
Kommentar
Fra : terje


Dato : 27-11-04 23:09

kurt-overgaard-andersen wrote:

> Set artikel = Server.CreateObject ("ADODB.Recordset")
> set Qtype = Request.QueryString("Type")

_Set_ brukes når du skal opprette et objekt, slik du gjør når du skriver
"Set artikel". Din variabel "artikel" er et objekt av typen Recordset.
Qtype derimot er ikke et objekt, men en vanlig variabel av datatypen
string. Prøv derfor med å fjerne ordet _set_.

Dessuten bør du gjøre det til en vane å alltid gi dine variabler logiske
og beskrivende navn. Et objekt bør hete objObjektnavn eller bare
oObjektnavn. En string variabel bør hete strVariabelnavn eller
sVariabelnavn osv. Poenget med dette er å gjøre det enklere å lese
koden. Hvis du legger denne koden i en skuff, for så å ta den fram igjen
om en måned, så kan du ikke lenger huske hvilken datatype variablene
"artikel" og Qtype er. Tenk også på hvilke problemer som oppstår når en
annen person skal lese din kode

terje


kurt-overgaard-ander~ (28-11-2004)
Kommentar
Fra : kurt-overgaard-ander~


Dato : 28-11-04 14:35

Hej Terje. Jeg er meget nybegynder med ASP & SQL - og dit råd kan helt
sikert give mig bedre overblik over programmeringen. / Tak
Jeg har nu ændret teksten som nedenstående - og nu giver den ingen fejl -
men finder heller ingen poster - skønt der er flere poster der skulle matche
den værdi der kommer med variablen.

Jeg kan vha de 2 linier med response.write se at variablen læses korrekt -
såvel som QueryString og som StrType.

<%
Set artikel = Server.CreateObject ("ADODB.Recordset")
StrType = Request.QueryString("Type")

artikel.Open "SELECT * FROM INDLAEG WHERE Type = '&StrType&' ORDER BY ID
desc" & tid, database

response.write Request.QueryString("Type")
response.write "<BR>"
response.write StrType
response.write "<BR>"
%>


og terje wrote in dk.edb.internet.webdesign.serverside.asp:
> kurt-overgaard-andersen wrote:
>
> > Set artikel = Server.CreateObject ("ADODB.Recordset")
> > set Qtype = Request.QueryString("Type")
>
> _Set_ brukes når du skal opprette et objekt, slik du gjør når du skriver
> "Set artikel". Din variabel "artikel" er et objekt av typen Recordset.
> Qtype derimot er ikke et objekt, men en vanlig variabel av datatypen
> string. Prøv derfor med å fjerne ordet _set_.
>
> Dessuten bør du gjøre det til en vane å alltid gi dine variabler logiske
> og beskrivende navn. Et objekt bør hete objObjektnavn eller bare
> oObjektnavn. En string variabel bør hete strVariabelnavn eller
> sVariabelnavn osv. Poenget med dette er å gjøre det enklere å lese
> koden. Hvis du legger denne koden i en skuff, for så å ta den fram igjen
> om en måned, så kan du ikke lenger huske hvilken datatype variablene
> "artikel" og Qtype er. Tenk også på hvilke problemer som oppstår når en
> annen person skal lese din kode
>
> terje
>


--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

terje (28-11-2004)
Kommentar
Fra : terje


Dato : 28-11-04 22:59

kurt-overgaard-andersen wrote:

> <%
> Set artikel = Server.CreateObject ("ADODB.Recordset")
> StrType = Request.QueryString("Type")
>
> artikel.Open "SELECT * FROM INDLAEG WHERE Type = '&StrType&' ORDER BY ID
> desc" & tid, database

Ser ut som om du mangler anførselstegn ("). Prøv med dette:
....Type = '" & StrType & "' ORDER...

terje

kurt-overgaard-ander~ (29-11-2004)
Kommentar
Fra : kurt-overgaard-ander~


Dato : 29-11-04 08:21

Tusind tak for hjælpen
- det var åbenbart der mit problem skjulte sig



--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Søg
Reklame
Statistik
Spørgsmål : 177548
Tips : 31968
Nyheder : 719565
Indlæg : 6408803
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste