Avatar billede konradsen Nybegynder
20. januar 2005 - 17:19 Der er 2 kommentarer og
2 løsninger

Et objekt er oblikatorisk

Hejsa.. Jeg bliver ved med at få denne fejl, og jeg kan simpelthen ikke finde fejlen.

Hver gang leg loader siden (f.eks: default.asp?page=links) så får jeg denne fejl:

Der opstod en Microsoft VBScript-kørselsfejl (0x800A01A8)
Et objekt er obligatorisk: 'edit'
/TEST/default.asp, line 11

Nogen der kan hjælpe mig ?

KILDEKODEN:

<%

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

Set rs = Conn.execute("SELECT text FROM pages WHERE url_ID='"& Request.Querystring("page") &"'")

if NOT (rs.BOF or rs.EOF) then

    db_text = rs("text")
    edit.loadHTML(db_text)
 
  else
 
    Response.Write "Der blev ikke fundet noget data"
 
end if

%>

<body topmargin="0" leftmargin="0">

<iframe frameborder="0" width="100%" height="100%" src="editor.htm" name="edit"></iframe>

<%

rs.close
set rs = nothing
conn.close
set conn = nothing

%>
Avatar billede softspot Forsker
20. januar 2005 - 18:31 #1
Hvad er det du vil med edit.loadHTML?

Problemet er at du ikke har fortalt ASP hvilken type edit er af og derfor kan den ikke tillade at du begynder at kalde funkioner på objektet. Du skal først oprette et objekt som edit peger på inden du kan benytte det.
Avatar billede konradsen Nybegynder
20. januar 2005 - 20:32 #2
Jeg har fundet ud af det... :o) Ellers tak for hjælpen..

Hmm... Kom lige til at tænke på, kan du evt. hjælpe mig med at andet problem? Kan jeg få dette:

data = edit.source

  Set Conn = Server.CreateObject("ADODB.Connection")
  Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="& Server.MapPath("../mdb/data.mdb")
 
  Set rs = Conn.execute("UPDATE pages SET headline='"& Request.Form("head") &"', description='"& Request.Form("desc") &"', [text]='& data &' WHERE url_ID='"& Request.Querystring("page") &"'")

  rs.open

  rs.close
  set rs = nothing
  conn.close
  set conn = nothing
 
  window.close()


til at ske, via en "onClick" hændelse fra en input button...?!
Avatar billede softspot Forsker
20. januar 2005 - 22:42 #3
Ja, men du skal en tur på serveren for at gøre det. Du kan gøre det ved at poste en form via en submit-knap eller et kald til en submit-funktion. Noget i stil med:

<%
if request.form("update") = "opdater" then
  ' udfør din databaseopdatering her
  ' MEN: du skal nok lade være med at udføre rs.open
  ' efter du har udført en Conn.execute, det vil nok
  ' bare ødelægge data i recordsettet (det er
  ' i det mindste ikke nødvendigt).
%>
<html>
<head>
  <script langauge=""javascript"">window.close();</script>
</head>
<body>
</body>
</html>
<%
else
%>
<html>
<head>
</head>
<body>
<form id="frm" name="frm" action="update.asp?page=1" mathod="post">
  <input type="text" name="head" id="head" value="">
  <input type="text" name="desc" id="desc" value="">
  <input type="submit" name="update" value="opdater">
</form>
</body>
</html>
<%
end if
%>

Det betyder noget i stil med at hvis du poster formularen, så opdateres databasen med det indhold som er indtastet i formularen og genererer en side som lukker vinduet. Ellers genereres formularen hvorfra man kan poste...

Muligvis lidt kluntet (efter andre eksperters mening), men jeg vil tro det fungerer... :)
Avatar billede konradsen Nybegynder
21. januar 2005 - 15:46 #4
Jeg har testet det og det virkede ikke... Jeg har umiddelbart i mellemtiden selv fundet løsningen... :o)

Du får dog allige vel halvdelen af pointene, som tak for forsøget.. ;o)
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