Avatar billede simsen Mester
17. marts 2006 - 19:45 Der er 7 kommentarer og
1 løsning

Flytte og gemme min dropdown form

Hejsa igen igen

Nu har jeg forsøgt hele dagen og kan bare ikke hitte ud af det. Jeg har en velfungerende dropdown boks i en form, jeg nu vil flytte ind i en eksisterende form.

Der sker to ting ved det;
1) Den viser ikke dropdown indholdet
2) Den sletter alt efterfølgende (altså den viser ikke længere de følgende felter i formen)

Det jeg forsøger at flytte er fra linie 17-40 (jeg flytter det hen, hvor jeg har skrevet XXXXXXXXXX i nedenviste kode:

updateRS("MenuNavn") = request.form("Menu")

Jeg vil også gemme det valgte i formen ind i tblPages tabellen. Det forsøger jeg at gøre med :
updateSQL = "SELECT pagename, pagedata, overskrift, underoverskrift, beskrivelse, noegleord, active, directlink, MenuNavn from tblPages where ID = " & ID & ";"

på linie 53 altså med Menunavn og så på linie 81:
updateRS("MenuNavn") = request.form("Menu")

Hele sidens kode er:

<!-- #INCLUDE FILE="../common/checksession.asp" -->
<%
    ID = request("ID")
    if not isNumeric(id) or id = "" then
        response.redirect("sidedefault.asp?not_number")
    end if
%>

<!-- #INCLUDE FILE="../common/dbconn1.asp" -->
<!-- #INCLUDE FILE="../common/headerAdm.asp" -->
<!-- #INCLUDE FILE="../common/admin_nav.asp" --> 

<!--- Type Content Below --->

<form action="editpage.asp?ID=<%=ID%>" method="post" name="menu">
    <select name="menu" size="1" onChange="document.menu.submit()">
<%
Set menuRS = Server.CreateObject("ADODB.RecordSet")
menuSQL = "Select MenuNavn FROM Menu"
'Response.Write menuSQL
menuRS.Open menuSQL, whtConn, 1
set tblRS = Server.CreateObject("ADODB.RecordSet")
tblSQL = "Select MenuNavn FROM tblPages where ID = " & ID & ";"
tblRS.Open tblSQL, whtConn, 1
Do While Not menuRS.EOF
    if request.Form("menu") <> "" then
        menu = request.Form("menu")
    else
        menu = tblRS("MenuNavn")
    end if
    if menu = menuRS("MenuNavn") then %>
<option value="<%=menuRS("MenuNavn")%>" selected><%=MenuRS("MenuNavn")%></option>
<%    else %>
<option value="<%=menuRS("MenuNavn")%>"><%=MenuRS("MenuNavn")%></option>
<%    end if
    MenuRS.MoveNext
loop
%>
</select>

</form>

<%
'==========SETUP IMAGES LIST===========
    Set myFso = Server.CreateObject("Scripting.FileSystemObject")
    Set Myfolder = Myfso.GetFolder(imageuploadpath)

'*****IF POSTBACK THEN UPDATE********
if request.form("postback") = 1 then

    set updateRS = Server.CreateObject("ADODB.RecordSet")
    updateSQL = "SELECT pagename, pagedata, overskrift, underoverskrift, beskrivelse, noegleord, active, directlink, MenuNavn from tblPages where ID = " & ID & ";"
    updateRS.Open updateSQL, whtConn, 1,3
        recordcount = updateRS.recordcount
        if recordcount <> 1 then
            updateRS.Close
            Set updateRS = Nothing
            whtConn.Close
            Set whtConn = Nothing
            response.redirect("sidedefault.asp?norecord")
        end if
    updateRS("pagename") = Presubmit2(request.form("pagename"))
    pagedata = Presubmit(request.form("pagedata"))

    insertimage = request.form("insertimage")
    if insertimage <> "" then
        imagelink = "<img src='" & imagewebpath & insertimage & "'>"
        'response.write imagelink
        pagedata = replace(pagedata,"imagehere",imagelink)
    end if

    updateRS("pagedata") = pagedata
    updateRS("directlink") = Presubmit2(request.form("directlink"))
    updateRS("active") = request.form("active")

    updateRS("overskrift") = request.form("overskrift")
    updateRS("underoverskrift") = request.form("underoverskrift")
    updateRS("beskrivelse") = request.form("beskrivelse")
    updateRS("noegleord") = request.form("noegleord")
    updateRS("MenuNavn") = request.form("Menu")

    updateRS.update
    updateRS.Close
    set updateRS = Nothing
    message = "<p><font color='#FF0000'>Opdatering successfuld</font></p>"
end if

Set dataRS = Server.CreateObject("ADODB.RecordSet")
ID = request("ID")
whtSQL = "Select ID, pagedata, pagename, overskrift, underoverskrift, beskrivelse, noegleord, active, directlink FROM tblPages where ID = " & ID & ";"
'Response.Write whtSQL
dataRS.Open whtSQL, whtConn, 1
        recordcount = dataRS.recordcount
        if recordcount <> 1 then
            dataRS.Close
            Set dataRS = Nothing
            whtConn.Close
            Set whtConn = Nothing
            response.redirect("sidedefault.asp?norecord")
        end if
pagename = dataRS("pagename")
ID = dataRS("ID")
pagedata = dataRS("pagedata")
directlink = dataRS("directlink")

overskrift = dataRS("overskrift")
underoverskrift = dataRS("underoverskrift")
beskrivelse = dataRS("beskrivelse")
noegleord = dataRS("noegleord")

active = dataRS("active")
    if active = 1 then
        activeform = "<input type='checkbox' name='active' value='1' checked class=""cssborder"">"
    else
        activeform =  "<input type='checkbox' name='active' value='1' class=""cssborder"">"
    end if

'close connections,etc..
dataRS.Close
Set dataRS = Nothing
whtConn.Close
Set whtConn = Nothing
%>
<%=message%>
<br>
<form action="editpage.asp?ID=<%=ID%>" method="post" name="frmXinhaTest" language="javascript">
<table class="smallbold">
    <tr>
        <td>Menu navn </td>
        <td>
XXXXXXXXXX
        </td>
    </tr>

    <tr>
        <td>Side titel </td>
        <td> <input type="text" name="pagename" value="<%=pagename%>" class="cssborder"></td>
    </tr>
        <td>Side ID </td>
        <td> <%=ID%></td>
    </tr>
    <tr>
        <td nowrap>Side direkte link </td>
        <td><input type="text" name="directlink" value="<%=directlink%>" size="55" class="cssborder"></td>
    </tr>
    <tr>
        <td nowrap>Overskrift </td>
        <td><input type="text" name="overskrift" value="<%=overskrift%>" size="55" class="cssborder"></td>
    </tr>
<!--
    <tr>
        <td nowrap>Underoverskrift </td>
        <td><input type="text" name="underoverskrift" value="<%=underoverskrift%>" size="55" class="cssborder"></td>
    </tr>
    <tr>
        <td nowrap valign="top">Beskrivelse - kort </td>
        <td><textarea cols="57" rows="3"  id="beskrivelse"  name="beskrivelse"><%=beskrivelse%></textarea></td>
    </tr>
-->
    <tr>
        <td nowrap valign="top">Nøgleord - max 15 ord <br>adskilt med komma </td>
        <td><textarea cols="57" rows="2"  id="noegleord"  name="noegleord"><%=noegleord%></textarea></td>
    </tr>
    <tr>
        <td>Aktiv </td>
        <td><%=activeform%></td>
    </tr>
</table>
<textarea cols="75" rows="25"  id="newbiearea1"  name="pagedata"><%=pagedata%></textarea>

<p class="smalltext">For at indsætte et billede, skrive <strong>imagehere</strong> på din side, hvor du vil have billedet skal blive vist.
<br>Vælg så det billede fra drop ned boksen herunder og klik på Opdater knappen.</p>
<select name="insertimage" size="1" class="cssborder">
<option selected></option>
<%
    filecount = 0
    For Each myFile in MyFolder.Files
    filename = myfile.name
        Response.Write "<option>" & filename & "</option>"
    filecount = filecount + 1
Next
Set MyFolder = Nothing
Set myFSO = Nothing
%>
</select>

<input type="hidden" name="postback" value="1">
<input type="hidden" name="id" value="<%=id%>">
<input type="submit" name="Update" value="Opdater" class="cssborder">
</form>

<!-- #INCLUDE FILE="../common/footerAdm.asp" -->
Avatar billede eagleeye Praktikant
17. marts 2006 - 21:32 #1
Du kan prøve sådan her, jeg har fjernet onChange="document.menu.submit()" fra drop-downen så den ikke submitter formen når man vælger noget nyt.



<!-- #INCLUDE FILE="../common/checksession.asp" -->
<%
    ID = request("ID")
    if not isNumeric(id) or id = "" then
        response.redirect("sidedefault.asp?not_number")
    end if
%>

<!-- #INCLUDE FILE="../common/dbconn1.asp" -->
<!-- #INCLUDE FILE="../common/headerAdm.asp" -->
<!-- #INCLUDE FILE="../common/admin_nav.asp" --> 

<!--- Type Content Below --->


<%
'==========SETUP IMAGES LIST===========
    Set myFso = Server.CreateObject("Scripting.FileSystemObject")
    Set Myfolder = Myfso.GetFolder(imageuploadpath)

'*****IF POSTBACK THEN UPDATE********
if request.form("postback") = 1 then

    set updateRS = Server.CreateObject("ADODB.RecordSet")
    updateSQL = "SELECT pagename, pagedata, overskrift, underoverskrift, beskrivelse, noegleord, active, directlink, MenuNavn from tblPages where ID = " & ID & ";"
    updateRS.Open updateSQL, whtConn, 1,3
        recordcount = updateRS.recordcount
        if recordcount <> 1 then
            updateRS.Close
            Set updateRS = Nothing
            whtConn.Close
            Set whtConn = Nothing
            response.redirect("sidedefault.asp?norecord")
        end if
    updateRS("pagename") = Presubmit2(request.form("pagename"))
    pagedata = Presubmit(request.form("pagedata"))

    insertimage = request.form("insertimage")
    if insertimage <> "" then
        imagelink = "<img src='" & imagewebpath & insertimage & "'>"
        'response.write imagelink
        pagedata = replace(pagedata,"imagehere",imagelink)
    end if

    updateRS("pagedata") = pagedata
    updateRS("directlink") = Presubmit2(request.form("directlink"))
    updateRS("active") = request.form("active")

    updateRS("overskrift") = request.form("overskrift")
    updateRS("underoverskrift") = request.form("underoverskrift")
    updateRS("beskrivelse") = request.form("beskrivelse")
    updateRS("noegleord") = request.form("noegleord")
    updateRS("MenuNavn") = request.form("Menu")

    updateRS.update
    updateRS.Close
    set updateRS = Nothing
    message = "<p><font color='#FF0000'>Opdatering successfuld</font></p>"
end if

Set dataRS = Server.CreateObject("ADODB.RecordSet")
ID = request("ID")
whtSQL = "Select ID, pagedata, pagename, overskrift, underoverskrift, beskrivelse, noegleord, active, directlink FROM tblPages where ID = " & ID & ";"
'Response.Write whtSQL
dataRS.Open whtSQL, whtConn, 1
        recordcount = dataRS.recordcount
        if recordcount <> 1 then
            dataRS.Close
            Set dataRS = Nothing
            whtConn.Close
            Set whtConn = Nothing
            response.redirect("sidedefault.asp?norecord")
        end if
pagename = dataRS("pagename")
ID = dataRS("ID")
pagedata = dataRS("pagedata")
directlink = dataRS("directlink")

overskrift = dataRS("overskrift")
underoverskrift = dataRS("underoverskrift")
beskrivelse = dataRS("beskrivelse")
noegleord = dataRS("noegleord")

active = dataRS("active")
    if active = 1 then
        activeform = "<input type='checkbox' name='active' value='1' checked class=""cssborder"">"
    else
        activeform =  "<input type='checkbox' name='active' value='1' class=""cssborder"">"
    end if

'close connections,etc..
dataRS.Close
Set dataRS = Nothing
whtConn.Close
Set whtConn = Nothing
%>
<%=message%>
<br>
<form action="editpage.asp?ID=<%=ID%>" method="post" name="frmXinhaTest" language="javascript">
<table class="smallbold">
    <tr>
        <td>Menu navn </td>
        <td>
    <select name="menu" size="1">
<%
Set menuRS = Server.CreateObject("ADODB.RecordSet")
menuSQL = "Select MenuNavn FROM Menu"
'Response.Write menuSQL
menuRS.Open menuSQL, whtConn, 1
set tblRS = Server.CreateObject("ADODB.RecordSet")
tblSQL = "Select MenuNavn FROM tblPages where ID = " & ID & ";"
tblRS.Open tblSQL, whtConn, 1
Do While Not menuRS.EOF
    if request.Form("menu") <> "" then
        menu = request.Form("menu")
    else
        menu = tblRS("MenuNavn")
    end if
    if menu = menuRS("MenuNavn") then %>
<option value="<%=menuRS("MenuNavn")%>" selected><%=MenuRS("MenuNavn")%></option>
<%    else %>
<option value="<%=menuRS("MenuNavn")%>"><%=MenuRS("MenuNavn")%></option>
<%    end if
    MenuRS.MoveNext
loop
%>
</select>
        </td>
    </tr>

    <tr>
        <td>Side titel </td>
        <td> <input type="text" name="pagename" value="<%=pagename%>" class="cssborder"></td>
    </tr>
        <td>Side ID </td>
        <td> <%=ID%></td>
    </tr>
    <tr>
        <td nowrap>Side direkte link </td>
        <td><input type="text" name="directlink" value="<%=directlink%>" size="55" class="cssborder"></td>
    </tr>
    <tr>
        <td nowrap>Overskrift </td>
        <td><input type="text" name="overskrift" value="<%=overskrift%>" size="55" class="cssborder"></td>
    </tr>
<!--
    <tr>
        <td nowrap>Underoverskrift </td>
        <td><input type="text" name="underoverskrift" value="<%=underoverskrift%>" size="55" class="cssborder"></td>
    </tr>
    <tr>
        <td nowrap valign="top">Beskrivelse - kort </td>
        <td><textarea cols="57" rows="3"  id="beskrivelse"  name="beskrivelse"><%=beskrivelse%></textarea></td>
    </tr>
-->
    <tr>
        <td nowrap valign="top">Nøgleord - max 15 ord <br>adskilt med komma </td>
        <td><textarea cols="57" rows="2"  id="noegleord"  name="noegleord"><%=noegleord%></textarea></td>
    </tr>
    <tr>
        <td>Aktiv </td>
        <td><%=activeform%></td>
    </tr>
</table>
<textarea cols="75" rows="25"  id="newbiearea1"  name="pagedata"><%=pagedata%></textarea>

<p class="smalltext">For at indsætte et billede, skrive <strong>imagehere</strong> på din side, hvor du vil have billedet skal blive vist.
<br>Vælg så det billede fra drop ned boksen herunder og klik på Opdater knappen.</p>
<select name="insertimage" size="1" class="cssborder">
<option selected></option>
<%
    filecount = 0
    For Each myFile in MyFolder.Files
    filename = myfile.name
        Response.Write "<option>" & filename & "</option>"
    filecount = filecount + 1
Next
Set MyFolder = Nothing
Set myFSO = Nothing
%>
</select>

<input type="hidden" name="postback" value="1">
<input type="hidden" name="id" value="<%=id%>">
<input type="submit" name="Update" value="Opdater" class="cssborder">
</form>

<!-- #INCLUDE FILE="../common/footerAdm.asp" -->
Avatar billede simsen Mester
17. marts 2006 - 21:44 #2
eagleeye

Desværre det hjalp ikke spor - den fjerner alt efterfølgende og den skriver intet ind i dropdown boksen :-/

Det med den fjerner alt efterfølgende kan det have noget med at jeg ikke lukker forbindelsen igen efter at have åbnet?
Avatar billede eagleeye Praktikant
17. marts 2006 - 21:59 #3
ja det er nok fordi conenction bliver lukket for tidligt prøv sådan her:

<!-- #INCLUDE FILE="../common/checksession.asp" -->
<%
    ID = request("ID")
    if not isNumeric(id) or id = "" then
        response.redirect("sidedefault.asp?not_number")
    end if
%>

<!-- #INCLUDE FILE="../common/dbconn1.asp" -->
<!-- #INCLUDE FILE="../common/headerAdm.asp" -->
<!-- #INCLUDE FILE="../common/admin_nav.asp" --> 

<!--- Type Content Below --->


<%
'==========SETUP IMAGES LIST===========
    Set myFso = Server.CreateObject("Scripting.FileSystemObject")
    Set Myfolder = Myfso.GetFolder(imageuploadpath)

'*****IF POSTBACK THEN UPDATE********
if request.form("postback") = 1 then

    set updateRS = Server.CreateObject("ADODB.RecordSet")
    updateSQL = "SELECT pagename, pagedata, overskrift, underoverskrift, beskrivelse, noegleord, active, directlink, MenuNavn from tblPages where ID = " & ID & ";"
    updateRS.Open updateSQL, whtConn, 1,3
        recordcount = updateRS.recordcount
        if recordcount <> 1 then
            updateRS.Close
            Set updateRS = Nothing
            whtConn.Close
            Set whtConn = Nothing
            response.redirect("sidedefault.asp?norecord")
        end if
    updateRS("pagename") = Presubmit2(request.form("pagename"))
    pagedata = Presubmit(request.form("pagedata"))

    insertimage = request.form("insertimage")
    if insertimage <> "" then
        imagelink = "<img src='" & imagewebpath & insertimage & "'>"
        'response.write imagelink
        pagedata = replace(pagedata,"imagehere",imagelink)
    end if

    updateRS("pagedata") = pagedata
    updateRS("directlink") = Presubmit2(request.form("directlink"))
    updateRS("active") = request.form("active")

    updateRS("overskrift") = request.form("overskrift")
    updateRS("underoverskrift") = request.form("underoverskrift")
    updateRS("beskrivelse") = request.form("beskrivelse")
    updateRS("noegleord") = request.form("noegleord")
    updateRS("MenuNavn") = request.form("Menu")

    updateRS.update
    updateRS.Close
    set updateRS = Nothing
    message = "<p><font color='#FF0000'>Opdatering successfuld</font></p>"
end if

Set dataRS = Server.CreateObject("ADODB.RecordSet")
ID = request("ID")
whtSQL = "Select ID, pagedata, pagename, overskrift, underoverskrift, beskrivelse, noegleord, active, directlink FROM tblPages where ID = " & ID & ";"
'Response.Write whtSQL
dataRS.Open whtSQL, whtConn, 1
        recordcount = dataRS.recordcount
        if recordcount <> 1 then
            dataRS.Close
            Set dataRS = Nothing
            whtConn.Close
            Set whtConn = Nothing
            response.redirect("sidedefault.asp?norecord")
        end if
pagename = dataRS("pagename")
ID = dataRS("ID")
pagedata = dataRS("pagedata")
directlink = dataRS("directlink")

overskrift = dataRS("overskrift")
underoverskrift = dataRS("underoverskrift")
beskrivelse = dataRS("beskrivelse")
noegleord = dataRS("noegleord")

active = dataRS("active")
    if active = 1 then
        activeform = "<input type='checkbox' name='active' value='1' checked class=""cssborder"">"
    else
        activeform =  "<input type='checkbox' name='active' value='1' class=""cssborder"">"
    end if

'close connections,etc..
dataRS.Close
Set dataRS = Nothing
' whtConn.Close      'må ikke lukkes her
'Set whtConn = Nothing 'må ikke lukke her
%>
<%=message%>
<br>
<form action="editpage.asp?ID=<%=ID%>" method="post" name="frmXinhaTest" language="javascript">
<table class="smallbold">
    <tr>
        <td>Menu navn </td>
        <td>
    <select name="menu" size="1">
<%
Set menuRS = Server.CreateObject("ADODB.RecordSet")
menuSQL = "Select MenuNavn FROM Menu"
'Response.Write menuSQL
menuRS.Open menuSQL, whtConn, 1
set tblRS = Server.CreateObject("ADODB.RecordSet")
tblSQL = "Select MenuNavn FROM tblPages where ID = " & ID & ";"
tblRS.Open tblSQL, whtConn, 1
Do While Not menuRS.EOF
    if request.Form("menu") <> "" then
        menu = request.Form("menu")
    else
        menu = tblRS("MenuNavn")
    end if
    if menu = menuRS("MenuNavn") then %>
<option value="<%=menuRS("MenuNavn")%>" selected><%=MenuRS("MenuNavn")%></option>
<%    else %>
<option value="<%=menuRS("MenuNavn")%>"><%=MenuRS("MenuNavn")%></option>
<%    end if
    MenuRS.MoveNext
loop
%>
</select>
        </td>
    </tr>

    <tr>
        <td>Side titel </td>
        <td> <input type="text" name="pagename" value="<%=pagename%>" class="cssborder"></td>
    </tr>
        <td>Side ID </td>
        <td> <%=ID%></td>
    </tr>
    <tr>
        <td nowrap>Side direkte link </td>
        <td><input type="text" name="directlink" value="<%=directlink%>" size="55" class="cssborder"></td>
    </tr>
    <tr>
        <td nowrap>Overskrift </td>
        <td><input type="text" name="overskrift" value="<%=overskrift%>" size="55" class="cssborder"></td>
    </tr>
<!--
    <tr>
        <td nowrap>Underoverskrift </td>
        <td><input type="text" name="underoverskrift" value="<%=underoverskrift%>" size="55" class="cssborder"></td>
    </tr>
    <tr>
        <td nowrap valign="top">Beskrivelse - kort </td>
        <td><textarea cols="57" rows="3"  id="beskrivelse"  name="beskrivelse"><%=beskrivelse%></textarea></td>
    </tr>
-->
    <tr>
        <td nowrap valign="top">Nøgleord - max 15 ord <br>adskilt med komma </td>
        <td><textarea cols="57" rows="2"  id="noegleord"  name="noegleord"><%=noegleord%></textarea></td>
    </tr>
    <tr>
        <td>Aktiv </td>
        <td><%=activeform%></td>
    </tr>
</table>
<textarea cols="75" rows="25"  id="newbiearea1"  name="pagedata"><%=pagedata%></textarea>

<p class="smalltext">For at indsætte et billede, skrive <strong>imagehere</strong> på din side, hvor du vil have billedet skal blive vist.
<br>Vælg så det billede fra drop ned boksen herunder og klik på Opdater knappen.</p>
<select name="insertimage" size="1" class="cssborder">
<option selected></option>
<%
    filecount = 0
    For Each myFile in MyFolder.Files
    filename = myfile.name
        Response.Write "<option>" & filename & "</option>"
    filecount = filecount + 1
Next
Set MyFolder = Nothing
Set myFSO = Nothing
%>
</select>

<input type="hidden" name="postback" value="1">
<input type="hidden" name="id" value="<%=id%>">
<input type="submit" name="Update" value="Opdater" class="cssborder">
</form>

<!-- #INCLUDE FILE="../common/footerAdm.asp" -->
Avatar billede simsen Mester
17. marts 2006 - 22:09 #4
OOoooo - altså hvis jeg kunne ville jeg møsse dig lige på trutten - men jeg nøjes med at give dig points istedet *griner*

Bare for at være sikker - det du har ændret er:
  <select name="menu" size="1" onChange="document.menu.submit()">
til
  <select name="menu" size="1">

og så har du slettet det med at lukke whtConn forbindelsen?
' whtConn.Close      'må ikke lukkes her
'Set whtConn = Nothing 'må ikke lukke her

To spørgsmål - skal jeg ikke lukke whtConn senere i dokumentet og har du lavet andre ændringer (jeg ikke lige kan få øje på) - da jeg umådelig gerne vil lære, hvad der er gået galt?

mvh
simsen
Avatar billede eagleeye Praktikant
17. marts 2006 - 22:17 #5
Det som er gået galt er et connectionen til databasen er blevet lukke før før der blev hentet data til drop-down boksen efter den blev flyttet ind i formen. Grunden til reesten af formen ikke blev vist er at koden er stoppet pga. fejl.

Ja det er det eneste jeg har ændret. Som skrevet nævnt så er onChange="document.menu.submit()" fjernet så valget ikke reloader siden.

Det andet er udkommenteret så connection til databasen ikke lukkes for tidligt.

Du har har helt ret med dit spørgsmål angående whtConn, man skal altid huske at lukke for en connection.

Så jeg vil anbefale at gøre det efter formen og gør det samme sted som myFSO sættes = nothing så disse linier:

Set MyFolder = Nothing
Set myFSO = Nothing
%>

Bliver til:

whtConn.Close     
Set whtConn = Nothing
Set MyFolder = Nothing
Set myFSO = Nothing
%>
Avatar billede eagleeye Praktikant
17. marts 2006 - 22:20 #6
Faktisk bør der også lukkes for menuRS:

    MenuRS.MoveNext
loop
MenuRS.Close  'ny linier
Set MenuRS = Nothing 'ny linie
%>
Avatar billede eagleeye Praktikant
17. marts 2006 - 22:28 #7
du kan også optimere lidt på det kode som laver drop-down boksen da koden faktisk henter MenuNavn fra tblPages ind i et recordset for sig selv, men det kunne i princippet lige så godt ske i den SQL sætningen som er lige inden hvor du får data til formen fra:

whtSQL = "Select ID, pagedata, pagename, overskrift, underoverskrift, beskrivelse, noegleord, active, directlink FROM tblPages where ID = " & ID & ";"


Rettes til dette så MenuNavn kolonnen medtages:

whtSQL = "Select ID, pagedata, pagename, overskrift, underoverskrift, beskrivelse, noegleord, active, directlink, MenuNavn  FROM tblPages where ID = " & ID & ";"


Så skal der laves en variable som så kan indeholde MenuNavn og kopiers fra recordset, tilføj ved disse linier:

underoverskrift = dataRS("underoverskrift")
beskrivelse = dataRS("beskrivelse")
noegleord = dataRS("noegleord")


Så de bliver til:

underoverskrift = dataRS("underoverskrift")
beskrivelse = dataRS("beskrivelse")
noegleord = dataRS("noegleord")
menunavn = dataRS("MenuNavn")  'her hentes den menunavn som er valgt til posten



Så kan koden som lave drop-down boksen rettes til dette:

    <select name="menu" size="1">
<%
Set menuRS = Server.CreateObject("ADODB.RecordSet")
menuSQL = "Select MenuNavn FROM Menu"
'Response.Write menuSQL
menuRS.Open menuSQL, whtConn, 1
Do While Not menuRS.EOF
    if request.Form("menu") <> "" then
      menunavn = request.Form("menu")
    end if
    if menunavn = menuRS("MenuNavn") then %>
<option value="<%=menuRS("MenuNavn")%>" selected><%=MenuRS("MenuNavn")%></option>
<%    else %>
<option value="<%=menuRS("MenuNavn")%>"><%=MenuRS("MenuNavn")%></option>
<%    end if
    MenuRS.MoveNext
loop
MenuRS.Close  'ny linier
Set MenuRS = Nothing 'ny linie
%>
</select>
Avatar billede simsen Mester
17. marts 2006 - 22:58 #8
Hmmmmm - min tekst forsvandt ud i den blå luft ?-)

Nå jeg forsøger igen.

Tak skal du have - og ja du har ret, jeg kan kun undskylde mig med, jeg lavede koden udenom det, jeg havde lavet, for at få den til at virke, INDEN jeg byggede den ind i alt det andet.

Den eneste bagdel er at, jeg så ikke får reloaded siden og dermed kan den ikke sortere på den undermenu, som jeg også skal have bygget ind. Men det må han bare leve med - altså at skulle vælge mellem alle undermenuer og ikke kun dem, der er under den menu han har valgt.

Tak for hjælpen igen

mvh
simsen
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