Avatar billede rasmus_h Nybegynder
23. november 2005 - 22:23 Der er 21 kommentarer og
1 løsning

HTTP 500 - Hvor er fejlen i koden?

Hej!

Hvorfor giver følgende kode en http 500 intern serverfejl??

Koden:

udr_change.asp:

<% Session.LCID = 1030 %>
<% Response.Buffer=True %>
<% PostUdrNr = Request.Form("Nr")

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

        Set rs = Server.CreateObject("ADODB.Recordset")
    strSQL = "SELECT * FROM udrykninger WHERE UdrNr = " & PostUdrNr & ""
    rs.Open strSQL, Conn, 1

          Dato = rs("Dato")
          Sted = rs("Sted")
          Kommune = rs("kommune")
          Melding = rs("Melding")
          Tekst = rs("Tekst")
          Fra = rs("Fra")
          UdrNr = rs("UdrNr")
%>

<html>
<head>


<meta http-equiv="Content-Language" content="da">


<title>Rediger udrykning</title>
<link rel="stylesheet" type="text/css" href="../cssdesign/design01.css">
</head>

<body topmargin="10" leftmargin="0" rightmargin="0">
<center>
<h2>Herunder kan du redigere en udrykning</h2>

<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" id="AutoNumber1" width="506">

    <tr>
       
        <td width="506"><form method="POST" action="udr_update.asp?Udr=<%=PostUdrNr%>">
    <table border="0" width="102%">
      <tr>
        <td width="25%">
          <font face="Verdana" color="#666666" size="2"><b>Dato / Tid (DD-MM-ÅÅÅÅ TT:MM)</b></font>
        </td>
        <td width="2%">&nbsp;</td>
        <td width="49%">
          <font face="Verdana" color="#666666" size="2"><b>Melding</b></font>
        </td>
      </tr>
      <tr>
        <td width="25%">
        <input type="text" name="NyDato" size="33" value="<%=Dato%>"></td>
        <td width="2%">&nbsp;</td>
        <td width="49%">
        <input type="text" name="NyMelding" size="33" value="<%=Melding%>"></td>
      </tr>
      <tr>
        <td width="25%"><b><font face="Verdana" color="#666666" size="2">Sted</font></b></td>
        <td width="2%">&nbsp;</td>
        <td width="49%">
          <font face="Verdana" color="#666666" size="2"><b>Kommune</b></font>
        </td>
      </tr>
      <tr>
        <td width="25%">
        <input type="text" name="NyAdresse" size="33" value="<%=Sted%>"></td>
        <td width="2%">&nbsp;</td>
        <td width="49%"><select size="1" name="NyKommune">
<% If Kommune = "Ringsted Kommune" THEN %>
            <option value="Ringsted Kommune" selected>Ringsted</option>
            <option value="Suså Kommune" >Suså</option>
<% Elseif Kommune = "Suså Kommune" THEN %>
            <option value="Ringsted Kommune">Ringsted</option>
            <option value="Suså Kommune" selected>Suså</option>
<% End If %>
          </select></td>
      </tr>
      <tr>
        <td width="25%">
          <font face="Verdana" color="#666666" size="2"><b>Tekst</b></font>
        </td>
        <td width="2%">&nbsp;</td>
        <td width="49%"><font face="Verdana" color="#666666" size="2"><b>Modtaget fra</b></font></td>
      </tr>
      <tr>
        <td width="25%" rowspan="5"><textarea rows="4" name="NyTekst" cols="27"><%=Tekst%></textarea></td>
        <td width="2%" rowspan="5">&nbsp;</td>
        <td width="49%"><select size="1" name="NyFra">
<% If Fra = "112 Alarm AC Slagelse" THEN %>
          <option value="112 Alarm AC Slagelse" selected>112 Alarm</option>
          <option value="Ringsted Politi">Ringsted Politi</option>
          <option value="VC Ringsted Brandvæsen">VC Ringsted Brandvæsen</option>
          &nbsp;
<% Elseif Fra = "Ringsted Politi" THEN %>
          <option value="112 Alarm AC Slagelse">112 Alarm</option>
          <option value="Ringsted Politi" selected>Ringsted Politi</option>
          <option value="VC Ringsted Brandvæsen">VC Ringsted Brandvæsen</option>
          &nbsp;
<% Elseif Fra = "VC Ringsted Brandvæsen" THEN %>
          <option value="112 Alarm AC Slagelse">112 Alarm</option>
          <option value="Ringsted Politi">Ringsted Politi</option>
          <option value="VC Ringsted Brandvæsen" selected>VC Ringsted Brandvæsen</option>
          &nbsp;
<% End If %>         
          </select></td>
      </tr>
        <td width="49%"><b><font face="Verdana" size="2" color="#666666">Udrykning Nr.</font></b></td>
      </tr>
      <tr>
        <td width="49%">
        <input type="text" name="NyUdrNr" size="4" value="<%=UdrNr%>"></td>
      </tr> 
      <tr>
        <td width="49%"></td>
      </tr>
      <tr>
        <td width="49%"></td>
      </tr>
      <tr>
        <td width="25%">&nbsp;</td>
        <td width="2%">&nbsp;</td>
        <td width="49%">&nbsp;</td>
      </tr>
      <tr>
        <td width="25%">
        <p align="center">&nbsp;</td>     
        <td width="2%">&nbsp;</td>
        <td width="49%">
        &nbsp;</td>
      </tr>
    </table>
</td>

<%
rs.Close
Set rs = Nothing
   
Conn.Close
set Conn = Nothing
%>       
    </tr>
    <tr>
       
        <td width="506">
        <h2 align="center"><input type="submit" value="Gem" name="submit"></h2>
</form>
        <h2 align="center"><a href="java script:window.close()">Luk vinduet</a></h2>
        </td>
       
    </tr>
</table>
  </center>
</body>
</html>

Vh
Rasmus
Avatar billede trekkies Juniormester
23. november 2005 - 22:24 #1
Hvis du bruger Internet Explorer, så kan få en bedre fejl kode/beskrivelse ved at slå denne fra i IE:

Funktioner -> Internetindstillinger -> Avanceret -> fjern kryds i "vis meddelelse om uskadelige http-fejl"
Avatar billede rasmus_h Nybegynder
23. november 2005 - 22:28 #2
Godt så... Så blev jeg det klogere at fejlen ligger i linie 10:

rs.Open strSQL, Conn, 1

- Rasmus
Avatar billede softspot Forsker
23. november 2005 - 22:29 #3
...men et godt sted at starte plejer at være forspørgsler til databasen og talfelter som ikke bliver tildelt nogen værdi. Eksempelvis denne linie:

strSQL = "SELECT * FROM udrykninger WHERE UdrNr = " & PostUdrNr & ""

Hvor man kunne mistænke PostUdrNr for at være tom i det pågældende tilfælde...
Avatar billede softspot Forsker
23. november 2005 - 22:30 #4
...evt fordi den skal hentes fra querystring- i stedet for i form-collection.
Avatar billede softspot Forsker
23. november 2005 - 22:31 #5
bare glem den sidste kommentar :|
Avatar billede rasmus_h Nybegynder
23. november 2005 - 22:32 #6
På startsiden bruges følgende:

        <form method="POST" action="udr_change.asp">
            <p align="center"><font face="Verdana"><b>
            <font size="2" color="#666666">Nr </font></b><font color="#666666">
            <input name="Nr" size="5"></font><b><font size="2" color="#666666">&nbsp;
            </font></b>
            <font color="#666666">
            <input type="submit" value="Hent" name="SendNr"></font></font></p>
        </form>
Avatar billede softspot Forsker
23. november 2005 - 22:32 #7
Den form som poster data til denne side, hvordan ser den ud og er feltet Nr på den form altid udfyldt?
Avatar billede softspot Forsker
23. november 2005 - 22:34 #8
Er der en mere specifik fejlmeddelelse?
Avatar billede rasmus_h Nybegynder
23. november 2005 - 22:38 #9
Microsoft OLE DB Provider for ODBC Drivers error '80040e21'

ODBC driver does not support the requested properties.

/intranet/udr_change.asp, line 10
Avatar billede rasmus_h Nybegynder
23. november 2005 - 22:39 #10
Ja feltet er altid udfyldt, det er meningen man skriver et id nummer der og så skal den hente data frem i formularen
Avatar billede softspot Forsker
23. november 2005 - 22:41 #11
Gad vide om det er pga. den cursortype du har valgt...? Prøv i stedet med:

rs.Open strSQL, Conn, 3
Avatar billede softspot Forsker
23. november 2005 - 22:43 #12
Alternativt en nyere version af din connectionstring (og dermed en nyere driver)...

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath("../db/udrykninger.mdb")
Avatar billede rasmus_h Nybegynder
23. november 2005 - 22:44 #13
Ny fejl:

Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.

/intranet/udr_change.asp, line 10
Avatar billede rasmus_h Nybegynder
23. november 2005 - 22:46 #14
med den nye connectionstring:

Microsoft JET Database Engine error '80040e07'

Data type mismatch in criteria expression.

/intranet/udr_change.asp, line 10
Avatar billede softspot Forsker
23. november 2005 - 22:46 #15
Prøv lige at udskifte disse to linier:

    strSQL = "SELECT * FROM udrykninger WHERE UdrNr = " & PostUdrNr & ""
    rs.Open strSQL, Conn, 1

med

    strSQL = "SELECT * FROM udrykninger WHERE UdrNr = " & PostUdrNr & ""
    response.write strSQL
    response.end
    'rs.Open strSQL, Conn, 1

og fortæl hvad du ser.

Er feltet UdrNr et talfelt i databasen?
Avatar billede rasmus_h Nybegynder
23. november 2005 - 22:50 #16
SELECT * FROM udrykninger WHERE UdrNr = 18000

Nej det er et tekstfelt i db'en
Avatar billede softspot Forsker
23. november 2005 - 22:50 #17
OK, så prøv dette:

strSQL = "SELECT * FROM udrykninger WHERE UdrNr = '" & PostUdrNr & "'"
Avatar billede rasmus_h Nybegynder
23. november 2005 - 22:51 #18
SELECT * FROM udrykninger WHERE UdrNr = '18000'
Avatar billede softspot Forsker
23. november 2005 - 22:55 #19
Ja, du skal lige tilbage til den gamle kode, blot med den ene ændring i SQL-sætningen... ;-)
Avatar billede rasmus_h Nybegynder
23. november 2005 - 22:57 #20
Ja... Nu virker det også strålende... Har rettet nogle af de andre sider til også... Tusind tak for hjælpen. Læg lige et svar...

- Rasmus
Avatar billede softspot Forsker
23. november 2005 - 23:00 #21
Det kommer der - velbekomme :)
Avatar billede softspot Forsker
23. november 2005 - 23:01 #22
Tak for point :)
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