Avatar billede Skynet Mester
05. juni 2002 - 15:30 Der er 20 kommentarer og
2 løsninger

Editor fejl

Hej

Min editor kan ikke opdatere tabellen <mellemrubrik>. Pga. beskrivelsens omfang kan I læse en uddybede problemstilling, samt se et konkret eksempel på problemet. Og se kilekoden, på denne adresse:

http://webfair.dk/editor/editor.asp?id=change&pageid=5

Med venlig hilsen
Silas
Avatar billede tmceu Praktikant
05. juni 2002 - 15:37 #1
Det er et problem med både querystring og form i samme submit.

<form name="fHtmlEditor" method="POST" action="editor.asp?id=write">

Lav i stedet et skjult felt på din form, så du kan se om den er submittet.

<INPUT TYPE="HIDDEN" NAME="id" VALUE="write">
Avatar billede tmceu Praktikant
05. juni 2002 - 15:39 #2
Da du kontroller id via denne linie:

mode = request("id")

behøver du ikke ændre den fra querystring til form :-)

Action på din form skal så ændres til:

<form name="fHtmlEditor" method="POST" action="editor.asp">
Avatar billede Skynet Mester
05. juni 2002 - 15:53 #3
Er dette rigtigt?

<form name="fHtmlEditor" method="POST" action="editor.asp">
            <INPUT TYPE="HIDDEN" NAME="id" VALUE="write">
            <input type="text" name="pageid" size="3" readonly maxlength="3" value="<%=RS("id")%>"><br>
                <br>
                <textarea name="EditorValue" style="display: none;"><%=RS("mellemrubrik")%></textarea>
Avatar billede tmceu Praktikant
05. juni 2002 - 15:58 #4
Ja, men du mangler naturligvis din form sluttag og din submit i ovenstående :-)
Avatar billede Skynet Mester
05. juni 2002 - 16:10 #5
Den virker ikke, jeg har oploadet en ny udgave med dine rettelser, og angivet den nye kildekode:
http://webfair.dk/editor/editor01.asp?id=change&pageid=5

Mvh Silas
Avatar billede tmceu Praktikant
05. juni 2002 - 16:18 #6
Kunne du ikke i toppen af din kode indsætte flg. linie:

response.write "ID: " & request("id")

Indsæt den eks. over denne linie:

Set Con = Server.CreateObject("ADODB.Connection")

Formålet er at se, hvad du får med over i id.

Det kan også være nødvendigt at konvertere til eks. lower case, for at være sikker på, at WRITE kan sammenlignes med write

mode = LCase(request("id"))
Avatar billede Skynet Mester
05. juni 2002 - 16:38 #7
ok, har nu ser det sådan ud:
<%
response.write "ID: " & request("id")
Set Con = Server.CreateObject("ADODB.Connection")
DBPath = "DBQ=" & server.mappath("database.mdb")
Con.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBPath
%>

på http://webfair.dk/editor/editor01.asp?id=change&pageid=5
Avatar billede tmceu Praktikant
05. juni 2002 - 16:43 #8
Aha, her går det galt :-)

Hvis du kalder siden med "id=change&pageid=5, har du en id i både querystring og form. Derfor skal du enten omdøbe, eller ændre denne linie:

mode = Request("id")

til:

mode = Request.Form("id")

Request uden angivelse af querystring eller form, er en genvej, der først kigger i querystring og derefter form. Du vil derfor altid få værdien change, som du kaldte siden med.
Avatar billede eagleeye Praktikant
05. juni 2002 - 16:45 #9
Når jeg trykke på Gem får jeg en onFormSubmit undefined .. Normalt kalder man validate functionen i form så form tag + submit kanp:

<form name="fHtmlEditor" method="POST" action="editor.asp?id=write" onclick="return onFormSubmit()">

<input type="submit" value="Gem" border="0">
Avatar billede eagleeye Praktikant
05. juni 2002 - 16:45 #10
onclick skal natuligvis være omsubmit
Avatar billede eagleeye Praktikant
05. juni 2002 - 16:51 #11
hmm har kikke lidt i koden igen og onFormSubmit har kalder submit så form tagen skal være du først skrev:

<form name="fHtmlEditor" method="POST" action="editor.asp?id=write">

Men knappen skal så ikke være en submit knap da den vil sumbite formen og du vil selv styre submit så Gem kanppen skal være:

<input type="buttom" onclick="onFormSubmit()" value="Gem" border="0"><br>
Avatar billede tmceu Praktikant
05. juni 2002 - 16:52 #12
Ups, jeg er kommet til at slette indholdet af pageid=5, ved at skrive id=write i querystring, så dit updatescript virker fint. Du har bare ikke den rigtige id=write med ovre
Avatar billede Skynet Mester
05. juni 2002 - 17:07 #13
Du har fået den til at virke, det lyder rigtig godt. Vil du evt. sende det til admin@webfair.dk eller forklare mnere præcist hvad jeg skal ændre for at få det til at virke.

Ang. id5 det gør ikke noget at du slettede den, jeg har lavet en sikkerhedskopi før jeg oploadet den

Mvh Silas
Avatar billede eagleeye Praktikant
05. juni 2002 - 17:14 #14
Koden mth til form tagen og submit skal være som i mit afviste svar(05/06-2002 16:51:28).
Avatar billede tmceu Praktikant
05. juni 2002 - 17:20 #15
Det skal vel så være button i stedet for buttom :-)

<input type="button" onclick="onFormSubmit()" value="Gem" border="0"><br>

Og så kom jeg til at sige noget vrøvl mht. querystring/form, din oprindelige kode burde virke med action=write, jeg beklager forvirringen.
Avatar billede eagleeye Praktikant
05. juni 2002 - 17:48 #16
ups ja en lille trykfejl.... Ja det skal jo være en knap :)
Avatar billede Skynet Mester
05. juni 2002 - 21:56 #17
Ok, jeg har nu prøvet at lave de ændringer som i har fundet frem til, men nu vil den ikke submite
http://webfair.dk/editor/editor03.asp?id=change&pageid=4

Men der var en ting som jeg ikke kunne lave, når man skriver
mode = Request("id")

til:

mode = Request.Form("id")

bliver siden helt tom

Mvh Silas
Avatar billede tmceu Praktikant
05. juni 2002 - 23:06 #18
Hvis du er gået tilbage til det oprindelige, og laver de rettelser eagleeye foreslår, skal du bare ændre din form tilbage til denne:

<form name="fHtmlEditor" method="POST" action="editor.asp?id=write">

Sp kan du også fjerne det hidden felt jeg fik lokket dig ud i.
Avatar billede Skynet Mester
05. juni 2002 - 23:50 #19
Mange tak for hjælpen! Nu virker den 100% ok

Posterer i lige 2 svar, så jeg kan give point
Avatar billede eagleeye Praktikant
05. juni 2002 - 23:55 #20
Det lyder godt.
Et svar.
Avatar billede tmceu Praktikant
06. juni 2002 - 14:23 #21
Samme her :-)
Avatar billede tmceu Praktikant
06. juni 2002 - 14:37 #22
Hov
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