Avatar billede freud Nybegynder
13. april 2002 - 13:45 Der er 20 kommentarer og
1 løsning

url problemer........

Jeg er ved at lave en menu men har fået lidt problemer.
Når jeg vil overføre parametre får jeg følgende fejl:
"Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
[Microsoft][ODBC Microsoft Access-driver] Der er for få parametre. Der var ventet 1.
/asp/projekter/blaahoejel/admin/sites/opdater_indhold.asp, line 68"

Koden ser sådan ud:
"      <a href="opdater.asp?ID="><strong>Forside:</strong></a><br><br>
      <a href="opdater.asp?ID=Nyheder"><strong>Nyheder:</strong></a><br>
      <a href="opdater.asp?ID=Butikken"><strong>Butikken:</strong></a><br>
      <a href="opdater.asp?ID=Reg"><strong>Rediger tekst på:</strong></a><br>
      <a href="opdater.asp?ID=Ansatte"><strong>Ansatte:</strong></a><br>
      <a href="opdater.asp?ID=Brugere"><strong>Brugere:</strong></a><br>
      <a href="opdater.asp?ID=Billeder"><strong>Billeder:</strong></a><br>
   

   
    <%     ID = Request.querystring("ID")
   
        Select Case ID
            Case "Nyheder"
                Response.write "- <a href='../news/nyheder_oversigt.asp' target='indhold'>Nyhedsoversigt</a><br>"
                Response.write "- <a href='../news/indtast.asp' target='indhold'>Indtast nyhed</a><br>"
                  Response.write "- <a href='../news/slet_opdater.asp' target='indhold'>Slet/opdater</a><br>"
                Response.Write "<br>"

            Case "Butikken"
                Response.write "- <a href='../store/vareoversigt.asp' target='indhold'>Vareoversigt</a><br>"
                Response.write "- <a href='../store/indtast.asp' target='indhold'>Indtast ny vare</a><br>"
                  Response.write "- <a href='../store/slet_opdater.asp' target='indhold'>Slet/opdater vare</a><br>"   
                Response.Write "<br>"
               
            Case "Reg"
                Response.write "- <a href='opdater_indhold.asp?id=Profil' target='indhold'>Profil</a><br>"
                Response.write "- <a href='opdater_indhold.asp?id=Arbejdsomraader' target='indhold'>Arbejdsomr&aring;der</a><br>"
                  Response.write "- <a href='opdater_indhold.asp?id=Ansatte' target='indhold'>Ansatte</a><br>"
                  Response.write "- <a href='opdater_indhold.asp?id=Butikken' target='indhold'>Butikken</a><br>"
                Response.write "- <a href='opdater_indhold.asp?id=Nyheder' target='indhold'>Nyheder</a><br>"
                  Response.write "- <a href='opdater_indhold.asp?id=Job' target='indhold'>Job</a><br>"
                  Response.write "- <a href='opdater_indhold.asp?id=Kontakt' target='indhold'>Kontakt</a><br>"
                  Response.write "- <a href='opdater_indhold.asp?id=Forside' target='indhold'>Forside</a><br>"
                Response.Write "<br>"
               
            Case "Ansatte"
                Response.write "- <a href='../emply/ansatte_oversigt.asp' target='indhold'>Se alle ansatte</a><br>"
                  Response.write "- <a href='../emply/indtast.asp' target='indhold'>Indtast ny ansat</a><br>"
                  Response.write "- <a href='../emply/slet_opdater.asp' target='indhold'>Slet/opdater ansat</a><br>"
                Response.Write "<br>"
               
            Case "Brugere"
                Response.write "- <a href='../use_admin/brugerop.asp' target='indhold'>Opret ny bruger</a><br>"
                  Response.write "- <a href='../use_admin/bruger_sletopdater.asp' target='indhold'>Opdater/Slet</a><br>"
                Response.Write "<br>"
               
            Case "Billeder"
                Response.write "- <a href='java script:nytVindue1()'> Se billeder</a><br>"
                Response.Write "<br>"
               
        End Select
    %>"

Hjælp ...................
Avatar billede freud Nybegynder
13. april 2002 - 13:46 #1
Det er i select delen det går galt i Case "Reg"
Avatar billede kimiwan Nybegynder
13. april 2002 - 13:49 #2
hvad er linje 68?
Avatar billede freud Nybegynder
13. april 2002 - 13:51 #3
Detter er linie 68:
Response.write "- <a href='opdater_indhold.asp?id=Nyheder' target='indhold'>Nyheder</a><br>"
Avatar billede kimiwan Nybegynder
13. april 2002 - 13:54 #4
og det er siden, der hedder opdater_indhold.asp ???
Avatar billede freud Nybegynder
13. april 2002 - 13:56 #5
????? forstår ikke helt dit sprøgsmål........ opdater_indhold.asp er siden som id indholdet skal sendes til
Avatar billede erikjacobsen Ekspert
13. april 2002 - 13:57 #6
Jeg kan ikke se du bruger database i den viste kode (ODBC Microsoft Access-driver)
Avatar billede freud Nybegynder
13. april 2002 - 13:59 #7
det går jeg heller ikke
Avatar billede freud Nybegynder
13. april 2002 - 14:01 #8
sådan her ser opdater_indhold.asp ud:
<body leftmargin="0" topmargin="10" marginwidth="0" marginheight="0">
<table border="0" cellspacing="0" cellpadding="0" width="100%">
  <tr>
    <td align="center">
   
    <%

    If Request.Form("Action") = "Opdater" Then

    session("Overskrift") = Replace(Request.Form("Overskrift"), "'", "''")
    session("Afsnit") = Replace(Request.Form("Afsnit"), "'", "''")
       
    'Aabner databasen
    set my_conn= Server.CreateObject("ADODB.Connection")
    my_Conn.Open DBCon

    'Updater indtastet data
    strSQL = "UPDATE SIDEINDHOLD SET Overskrift='"& session("Overskrift") &"', Afsnit='"& session("Afsnit")  &"'WHERE Sidenavn='" & session("Sidenavn") & "'"
   
    set rs = my_Conn.Execute(strSQL)
   
    'Luk databasen
    my_conn.Close
    Set my_Conn = Nothing

       

    %>
    <br>
      <br>
      Siden: <b><%= session("Overskrift")%></b> er opdateret <%

    Else

    'Aabner databasen
    set my_conn= Server.CreateObject("ADODB.Connection")
    my_Conn.Open DBCon

    ' Udskriv alt fra tabellen Forside
    strSQL = "Select * From SIDEINDHOLD Where Sidenavn = " & Request.Querystring("id")

    set rs = my_Conn.Execute(strSQL)

    session("Sidenavn") = rs("Sidenavn")
    session("Overskrift") = rs("Overskrift")
    session("Afsnit") = rs("Afsnit")

   
    'Lukker databasen
    my_conn.Close
    Set my_Conn = Nothing

%></td>
  </tr>
</table>
<br>
<table border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="30">&nbsp; </td>
    <td><b>Ret indholdet p&aring;: </b><%= session("Sidenavn") %></td>
  </tr>
  <tr>
    <td colspan="2"> <br>
      <form name="form" method="post" action="opdater_indhold.asp">
        <b>Overskrift:</b><br>
        <input type="text" name="Overskrift" size="60" class="text_felt" value="<%= session("Overskrift") %>">
        <br>
        <br>
        <br>
        <b>Afsnit:</b> <br>
        <textarea name="Afsnit" cols="65" rows="20" class="text_felt"><%= session("Afsnit") %></textarea>
        <br>
        <br>
        <input type="submit" name="Action" value="Opdater" class="knap">
      </form>
    </td>
  </tr>
  <tr>
    <td width="30">&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</table>

<% End If %>
</body>
</html>
Avatar billede kimiwan Nybegynder
13. april 2002 - 14:10 #9
jeg tør vædde på at request.querystring("id") ikke indeholder nogen værdi - det er fejlen
Avatar billede freud Nybegynder
13. april 2002 - 14:16 #10
ja - men hvorfor, sendes værdien ikke vidre ? har prøvet at lege med forskellige kombinationer af " og ', men lige lidt hjælper det
Avatar billede kimiwan Nybegynder
13. april 2002 - 14:21 #11
ah sorry.. request.querystring("id") indeholder måske alligevel noget.. prøv at udskrive det:
response.write("Select * From SIDEINDHOLD Where Sidenavn = " & Request.Querystring("id"))
response.end 'stopper eksekvering af siden, så du ikke får fejl længere nede i koden!

i sql skal strengværdier altid være omgivet af '' .. numeriske værdier skal *ikke* ... datoer skal være omgivet af '' i de fleste databaser, men i ms access skal de være omgivet af ##.
Avatar billede freud Nybegynder
13. april 2002 - 14:26 #12
helt rigtig - den indeholder den rigtige værdig, men hvad nu, hvad kan så være problemet ?
Avatar billede freud Nybegynder
13. april 2002 - 14:28 #13
Hvis jeg bare skriver :
<a href="opdater_indhold.asp?id='Profil'" target="indhold">Profil</a>
så virker det
Avatar billede freud Nybegynder
13. april 2002 - 14:30 #14
ovenstående står selvfølgelig som alm. html kode
Avatar billede freud Nybegynder
13. april 2002 - 14:48 #15
hvordan sender jeg id'et vidre så det indholdet f.eks. bliver=
'profil' og ikke profil ?
Avatar billede kimiwan Nybegynder
13. april 2002 - 14:54 #16
du skal ikke skrive ' foran id= i dit link:

forkert:
<a href="opdater_indhold.asp?id='Profil" target="indhold">Profil</a>

rigtigt:
<a href="opdater_indhold.asp?id=Profil" target="indhold">Profil</a>

det er først når du bygger din sql streng, du skal bruge '' omkring strengværdier.
Avatar billede freud Nybegynder
13. april 2002 - 15:02 #17
hvordan sender jeg id'et vidre så det indholdet f.eks. bliver=
'profil' og ikke profil ? når det skal bruges i denne samenhæng:

Response.write "- <a href='opdater_indhold.asp?id=Profil' target='indhold'>Profil</a>
Avatar billede kimiwan Nybegynder
13. april 2002 - 15:04 #18
når du bygger din sql string på næste side, skal du bare skrive '' omkring værdien i sql stringen.. eks:

strSQL = "SELCT * FROM myTable WHERE SideNavn = '"  request.querystring("id") & "'"
Avatar billede freud Nybegynder
13. april 2002 - 15:11 #19
nu må der være tæt på, får dog følgende fejl:

Slut på sætning var ventet
/asp/projekter/blaahoejel/admin/sites/opdater_indhold.asp, line 68, column 56
strSQL = "SELCT * FROM SIDEINDHOLD WHERE SideNavn = '" request.querystring("id") & "'"
Avatar billede kimiwan Nybegynder
13. april 2002 - 15:13 #20
du mangler et & lige før request.querystring("id")
Avatar billede freud Nybegynder
13. april 2002 - 15:17 #21
NU VIRKER DET - kanon, tak og gó weekend :-)
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