/ 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
simpel søgning i database
Fra : Brian Danielsen


Dato : 31-12-02 16:59


jeg har et lille problem som består af jeg får en grim fejl
meldning, skal jeg lave en ny side til at vise søge resultaterne
?

koden:

search.asp

<%
'databaseforbindelse
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("film.mdb")
Conn.Open DSN

strID = Request.Form("del")
strSQL = "select * from music where title =" & strID
response.write strsql
response.end

' SQL sætning eksekveres
Conn.Execute(strSQL)

' Luk databaseforbindelse
Conn.Close
Set Conn = Nothing
%>

fejl:

Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC Microsoft Access Driver]General error Unable to
open registry key 'Temporary (volatile) Jet DSN for process 0x574
Thread 0x634 DBC 0x13c4014 Jet'.
/search/search.asp, line 6

hvad er fejlen der står flere steder at det er sådan man søger

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

 
 
Jørn Andersen (31-12-2002)
Kommentar
Fra : Jørn Andersen


Dato : 31-12-02 17:30

On Tue, 31 Dec 2002 15:59:20 +0000 (UTC), Brian Danielsen
<briand@ofir.dk> wrote:

>jeg har et lille problem som består af jeg får en grim fejl
>meldning, skal jeg lave en ny side til at vise søge resultaterne
<snip>

Linie 6 er formentlig denne:
>Conn.Open DSN

- altså er det ikke din "søge-kode", men allerede når du skal åbne
forbindelsen til databasen.

>fejl:
>
>Error Type:
>Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
>[Microsoft][ODBC Microsoft Access Driver]General error Unable to
>open registry key 'Temporary (volatile) Jet DSN for process 0x574
>Thread 0x634 DBC 0x13c4014 Jet'.
>/search/search.asp, line 6
>
>hvad er fejlen der står flere steder at det er sådan man søger

Se:
<URL: http://www.aspfaq.com/plain.asp?id=2154>

Det er formentlig et tilladelses-problem.
Er det på din egen eller på et webhotel?

Good luck!

--
Jørn Andersen,
Brønshøj

Jonas Skafte Jensen (31-12-2002)
Kommentar
Fra : Jonas Skafte Jensen


Dato : 31-12-02 17:57

> Det er formentlig et tilladelses-problem.
> Er det på din egen eller på et webhotel?

Eller et spørgsmål om placering - ligger din film.mdb i samme folder som den
viste asp-fil, det er ihf. der du peger hen.

~J



Jonas Skafte Jensen (31-12-2002)
Kommentar
Fra : Jonas Skafte Jensen


Dato : 31-12-02 18:03


"Jonas Skafte Jensen" <jskaftejensen@hotmail.com> skrev i en meddelelse
news:M%jQ9.71$3f4.3316@news.get2net.dk...
> > Det er formentlig et tilladelses-problem.
> > Er det på din egen eller på et webhotel?
>
> Eller et spørgsmål om placering - ligger din film.mdb i samme folder som
den
> viste asp-fil, det er ihf. der du peger hen.
>
> ~J

Jeg tror nu også også som Jørn at det handler om rettighed - vil blot nævne
at det ikke er nogen god ide at have sin dbfil liggende i en folder som kan
læses af den anonyme internetbruger, hvilket er tilfældet, hvis den ligger i
en offentlig folder, hvad din kode tyder på.



Brian Danielsen (31-12-2002)
Kommentar
Fra : Brian Danielsen


Dato : 31-12-02 19:04

jeg kører der hjemme på min IIS server....


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

Jonas Skafte Jensen (31-12-2002)
Kommentar
Fra : Jonas Skafte Jensen


Dato : 31-12-02 20:25

> jeg kører der hjemme på min IIS server....

Hvis du kører XP kan du inde under stifinder->indstillinger (folder options)
vælge at deaktivere enkel fildeling.
Det gør det lidt mere gennemskueligt hvad IUSR_machinename har adgang til.



Brian Danielsen (01-01-2003)
Kommentar
Fra : Brian Danielsen


Dato : 01-01-03 15:41

jeg kører win2k... og kan ikke finde noget med rettigheder. hvad faneblad skal
jeg kigge under ?

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

Brian Danielsen (01-01-2003)
Kommentar
Fra : Brian Danielsen


Dato : 01-01-03 15:54

jeg har siddet og fusket lidt med det nu:

koden:

strID = Request.Form("del")
strSQL = "select * from music where title = " & strID

når jeg skriver den ud:

select * from music where title = soft dogs

fejlen når jeg ikke skriver ud:

Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in
query expression 'title = soft dogs'.
/search/search.asp, line 10


jeg ved godt det en ' eller en " men kan ikke finde ud af hvordan de skal
placeres

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

Jørgen Müller (01-01-2003)
Kommentar
Fra : Jørgen Müller


Dato : 01-01-03 16:06

Brian Skrev
>strSQL = "select * from music where title = " & strID

Hvis strID i databasen er tekst, så skal du skrive
strSQL = "select * from music where title = '" & strID & "'"


--
Med Venlig Hilsen

Jørgen Müller




Brian Danielsen (01-01-2003)
Kommentar
Fra : Brian Danielsen


Dato : 01-01-03 16:42


Hvis strID i databasen er tekst, så skal du skrive
strSQL = "select * from music where title = '" & strID & "'"


giver fejlen:

Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
[Microsoft][ODBC Microsoft Access Driver] Too few parameters.
Expected 1.

hvad med den her:

<%
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("music.mdb")
Conn.Open DSN

strID = Request.Form("del")
strSQL = "select * from music where title = '" & strID & "'"



Conn.Execute(strSQL)

Conn.Close
Set Conn = Nothing
%>


strSQL = "select * from music where title = " & strID

Do
strTitle = rs("title")

strLink = "<a href='musicinfo.asp?id=" & rs("Id") & "'>" &
strTitle & "</a>"

Response.Write "¬ " & strLink & "<br>"

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

Jørgen Müller (01-01-2003)
Kommentar
Fra : Jørgen Müller


Dato : 01-01-03 17:53

Brian skrev:
>Set Conn = Server.CreateObject("ADODB.Connection")
>DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
>DSN = DSN & "DBQ=" & Server.MapPath("music.mdb")
>Conn.Open DSN

>strID = Request.Form("del")
>strSQL = "select * from music where title = '" & strID & "'"
>Conn.Execute(strSQL)
Jeg bruger selv en lidt anden måde at åbne dataforbindelsen på :

Dim objConn
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" &
Server.MapPath("music.mdb")

'Hvis du er i tvivl om Server.MapPath så skriv den ud! Response.Write
Server.MapPath("music.mdb")

objCon.Execute(strSQL)

Jeg vil personlig foretrække at bruge enten et Recordset object
Set RS = Server.CreateObject("ADODB.Recordset")
strSQL = "select * from music where title = '" & strID & "'"
RS.Open strSQL, objConn

Eller et Command object
Set objCom = Server.CreateObject("ADODB.Command")
objCom.ActiveConnection = objConn
objCom.CommandText = "select * from music where title = '" & strID & "'"
objCom.CommandType = &H0001
Set rs = objCom.Execute
og så burde du have adgang til felterne i databasen.

>Do
> strTitle = rs("title")
Husk lige at sætte betingelse på
Do While Not rs.EOF
Response.Write rs(0)
rs.MoveNext
Loop

--
Med Venlig Hilsen

Jørgen Müller




Jens Gyldenkærne Cla~ (01-01-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 01-01-03 23:06

Brian Danielsen skrev:

> select * from music where title = soft dogs

"soft dogs" er en tekstværdi der skal indkapsles i anførselstegn:

   select * from music where title = 'soft dogs'

> jeg ved godt det en ' eller en " men kan ikke finde ud af
> hvordan de skal placeres

Anførselstegn sættes om tekstværdier. Ikke om felt- eller
tabelnavne, og ikke om talværdier. Eksempel:

   SELECT tekstFelt, talFelt
   FROM tabelnavn
   WHERE tekstFelt = 'Hans Kurt'
   AND talFelt = 42
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408937
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste