Avatar billede cotus Nybegynder
25. april 2002 - 16:21 Der er 10 kommentarer og
1 løsning

Problem med nyhedssystem!

Hvorfor fungerer dette ikke? Jeg får fejl, men min server skriver ikke hvilken fejl, den skriver bare at der er en 500 Internal error!

<% If Request.Querystring ("id") = "nyhed" Then %>
<HTML>
<HEAD>
<TITLE> Nyhedssystem </TITLE>
</HEAD>

<BODY>

</BODY>
</HTML>
<% Elseif Request.Querystring ("id") = "add" Then %>
<HTML>
<HEAD>
<TITLE> Nyhedssystem </TITLE>
</HEAD>

<BODY>
<form method="post" action="default.asp?id=save">
Overskrift:  <input type="text" name="overskrift"><br>
Forfatter:  <input type="text" name="forfatter"><br>
Tekst:  <input type="text" name="tekst"><br>
Dato:  <input type="text" name="dato"><br>
<input type="submit" value="Opret artikel">
</form>
</BODY>
</HTML>
<% Elseif Request.Querystring ("id") = "save" Then %>
<%
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("nyheder.mdb")
Conn.Open DSN
strSQL = "Insert into nyheder (overskrift, forfatter, tekst, dato) values('" & Request.Form("overskrift") & "','" & Request.Form("forfatter") & "','" & Request.Form("tekst") & "','" & Request.Form("dato") & "')"
Conn.Execute(strSQL)
Conn.Close
Set Conn = Nothing
%>
<a href='default.asp'>Tilbage</a>
<% Elseif Request.Querystring ("id") = "top5" Then %>
<HTML>
<HEAD>
<TITLE> Nyhedssystem </TITLE>
</HEAD>

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

strSQL = "Select top 5 * from nyheder"
Set rs = Conn.Execute(strSQL)

Do

  %><a href='default.asp?nyhed=<% Response.Write rs("id") %>'><% Response.Write rs("overskrift") & "<br>" %></a><%

  rs.MoveNext

Loop While Not rs.EOF

Conn.Close
Set Conn = Nothing
%>
</BODY>
</HTML>
<% Elseif Request.Querstring ("id") = "all" Then %>
<HTML>
<HEAD>
<TITLE> Nyhedssystem </TITLE>
</HEAD>

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

strSQL = "Select * from nyheder"
Set rs = Conn.Execute(strSQL)

Do

%> <a href="default.asp?nyhed=<% Response.Write rs("id") %>">
<%
  Response.Write rs("Overskrift")
  Response.write "<br>"
%> </a> <%

  rs.MoveNext

Loop While Not rs.EOF

Conn.Close
Set Conn = Nothing
%>
</BODY>
</HTML>
<% Else Response.redirect "default.asp?id=top5"
End if %>

<html>
<head>
<title>Test-side til Cotus</title>
</head>
<body>

<%
view = Request.QueryString("view")

Set conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("nyheder.asp")

set rs = Conn.execute("SELECT * FROM nyheder WHERE Id='" & id &"'")

overskrift = rs("overskrift")
forfatter = rs("forfatter")
dato = rs ("dato")
tekst = rs ("tekst")
%>
<table>
<tr>
<td>Overskrift</td>
<td><%=overskrift%></td>
</tr>
<tr>
<td>Forfatter</td>
<td><%=forfatter%></td>
</tr>
<tr>
<td>Dato</td>
<td><%=dato%></td>
</tr>
<tr>
<td>Tekst</td>
<td><%=tekst%></td>
</tr>
</table>

<%
rs.Close
set rs = nothing

Conn.Close
Set Conn = Nothing
%>
</body>
</html>
Avatar billede rou Nybegynder
25. april 2002 - 16:33 #1
I din browser, gå ind i tools->options->advanced->browsing
og fjern fluebenet i "Show Friendly HTTP error messages", så skulle du få anstændige fejlbeskeder.
Avatar billede cotus Nybegynder
25. april 2002 - 16:36 #2
Jeg får denne fejl:

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key 'Temporary (volatile) Jet DSN for process 0xbc4 Thread 0x1220 DBC 0x9117014 Jet'.

/nyheder/default.asp, line 50

Og linie 50 er:
Conn.Open DSN
Avatar billede rou Nybegynder
25. april 2002 - 16:39 #3
har du skriverettigheder i den folder, hvor databasen ligger?
Rettighederne skal gives til brugeren som hedder IUSER_<maskinnavn>.

Både selve databasefilen, såvel som folderen, skal have dette.
Avatar billede coltau Juniormester
25. april 2002 - 16:41 #4
Den kan ikke findes databasen "nyheder.mdb" eller den findes i en skrivebeskyttet mappe.

Flyt evt. databasen til en ikke skrivebeskyttet mappe og ændre disse linier:
DSN = DSN & "DBQ=" & Server.MapPath("nyheder.mdb")
til:
DSN = DSN & "DBQ=" & Server.MapPath("\fuldadgangmappe\nyheder.mdb")
Avatar billede cotus Nybegynder
25. april 2002 - 16:45 #5
Hmmm... serveren er på cliche.dk... og der mener jeg, at der står, at der er frie skriverettigheder til alle mapper!

/cotus
Avatar billede cotus Nybegynder
25. april 2002 - 16:49 #6
Så får jeg fejlen:

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key 'Temporary (volatile) Jet DSN for process 0xbc4 Thread 0x11b8 DBC 0x911c024 Jet'.

/nyheder/default.asp, line 50


Og det betyder?
Avatar billede cotus Nybegynder
25. april 2002 - 16:53 #7
46' <%
47' Set Conn = Server.CreateObject("ADODB.Connection")
48' DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
49' DSN = DSN & "DBQ=" & Server.MapPath("\db\nyheder.mdb")
50' Conn.Open DSN
51'
52' strSQL = "Select top 5 * from nyheder"
53' Set rs = Conn.Execute(strSQL)
54'
55' Do

/cotus
Avatar billede coltau Juniormester
25. april 2002 - 16:59 #8
De skriver godt nok at der er skrive/læserettigheder i alle mapper.

Jeg vil foreslå at du kontakter dem med spørgsmålet:

Hvorfor kan jeg ikke åbne min Access-DB med disse ASP-linier:

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

Fejlkode:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key 'Temporary (volatile) Jet DSN for process 0xbc4 Thread 0x11b8 DBC 0x911c024 Jet'.

/nyheder/default.asp, line 50
Avatar billede eagleeye Praktikant
25. april 2002 - 17:15 #9
Det har måske ikke det helt store at sige men prøv at ændre \ til /

DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("/db/nyheder.mdb")
Avatar billede rou Nybegynder
25. april 2002 - 17:41 #10
Ganske rigtigt, Eagleeye. Det har faktisk ikke det store at sige. Faktisk forventer Mappath faktisk "/", da det er relative stier man bruger der.
Avatar billede cotus Nybegynder
13. juni 2002 - 20:49 #11
/lukket
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