Avatar billede hede98 Nybegynder
11. maj 2003 - 00:24 Der er 11 kommentarer og
1 løsning

Fra 2 tabeller til en "rulleliste"

Hej
Jeg har en rulleliste, hvor jeg henter flere forskellige navne ind. Nu har jeg lavet en RETTE funktion, som jo skal hente det navn der er valgt fra en Tabel og liste de andre muligheder, fra en anden tabel.. jeg har lavet sådan noget her, men det virker ikke:

<select size="1" name="D1">
                  <% set rskunder2 = Conn.execute("SELECT * FROM Kontakpersoner WHERE kundeid=" & request("kundeid"))
 
                  <%do while not rskunder3.EOF%>
                  <option><%Response.Write rskunder1("kontaktpersonid")%></option>
                  <option><%Response.Write rskunder3("Navn")%>&nbsp<%Response.Write rskunder3("efternavn")%></option>
                  <%rskunder3.MoveNext
                  loop%>
                  </select></font></div>
                  </td>
                  <%rskunder3.Close
                    set rskunder3 = Nothing
                  %>
Avatar billede mm12010 Nybegynder
11. maj 2003 - 00:28 #1
smid lige hele koden
Avatar billede sp Nybegynder
11. maj 2003 - 13:13 #2
Ja der må mangle noget af koden.

Det er lidt nemmere at læse hvad der står, ved at skrive sådan:
<%
set rskunder2 = Conn.execute("SELECT * FROM Kontakpersoner WHERE kundeid=" & request("kundeid"))
if NOT rskunder2.EOF Then
  Response.Write "<select size=""1"" name=""D1"">"
  do while not rskunder3.EOF
    Response.Write "<option>" & rskunder1("kontaktpersonid") & "</option>"
    Response.Write "<option>" & rskunder3("Navn") & rskunder3("efternavn") & "</option>"
    rskunder3.MoveNext
  loop
Response.Write "</select>"
End if
%>
</td>
<%
rskunder3.Close
set rskunder3 = Nothing
%>
Avatar billede stoney96 Nybegynder
11. maj 2003 - 14:11 #3
Du har lavet et recordset som hedder "rskunder2" men du kalder "rskunder3" i koden.
Avatar billede sp Nybegynder
11. maj 2003 - 14:28 #4
Ja.. Du kalder rskunder1 og rskunder3 og recordsettet hedder rskunder2
Avatar billede hede98 Nybegynder
11. maj 2003 - 15:58 #5
her er hele min kode

<%
' ADODB connection objektet
Set Conn = Server.CreateObject("ADODB.Connection")
' Husk at angive den rigtige sti til din database
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("/crm.mdb")
' Åben databaseforbindelsen
Conn.Open DSN
%>
  <% set rskunder1 = Conn.execute("SELECT * FROM aktiviteter WHERE opgaveid=" & request("opgaveid"))

%>



<body bgcolor="#FFFFFF">
<table width="962" border="0" height="257">
  <tr>
    <td width="553" height="263" valign="top">
      <form name="form1" method="post" action="editaktivitet.asp?mode=gem&opgaveid=<%=rskunder1("opgaveid")%>&kundeid=<%=rskunder1("kundeid")%>">
        <table width="53%" border="0" height="130" bgcolor="#000000" bordercolor="#000000" cellpadding="1" cellspacing="1">
          <tr>
            <td height="220" bgcolor="#CCCCCC">
              <table width="585" border="0" cellspacing="0" height="348">
                <tr>
                  <td width="109" height="22">
                  <font face="Verdana, Arial, Helvetica, sans-serif" size="1">
                  Overskrift.:</font></td>
                  <td colspan="2" height="22" width="264"><font face="Verdana, Arial, Helvetica, sans-serif" size="1">
                    <input type="text" name="Titel" size="30" value="<%Response.Write rskunder1("titel")%>">
                    </font></td>
                  <td colspan="2" rowspan="5" valign="top" width="206" height="116"><font face="Verdana, Arial, Helvetica, sans-serif" size="1">
                    &nbsp;</font></td>
                </tr>
                <tr>
                  <td width="109" height="22">
                  <font face="Verdana, Arial, Helvetica, sans-serif" size="1">
                  Kontakt person.:</font></td>
                  <td height="22" width="242">
                    <div align="left">
</select>
                    <font face="Verdana, Arial, Helvetica, sans-serif" size="1">

                                     
                    <select size="1" name="D1">
                  <% set rskunder2 = Conn.execute("SELECT * FROM Kontakpersoner WHERE kundeid=" & request("kundeid"))
 
                  <%do while not rskunder3.EOF%>
                  <option><%Response.Write rskunder1("kontaktpersonid")%></option>
                  <option><%Response.Write rskunder3("Navn")%>&nbsp<%Response.Write rskunder3("efternavn")%></option>
                  <%rskunder3.MoveNext
                  loop%>
                  </select></font></div>
                  </td>
                  <%rskunder3.Close
                    set rskunder3 = Nothing
                  %>
                  <td width="20" height="22"><font face="Verdana, Arial, Helvetica, sans-serif" size="1"></font></td>
                </tr>
                <tr>
     
                  <td width="109" height="22">
                  <font face="Verdana, Arial, Helvetica, sans-serif" size="1">
                  Projekt.:</font></td>
                  <td height="22" width="242"><font face="Verdana, Arial, Helvetica, sans-serif" size="1">



<%' ADODB connection objektet
Set Conn = Server.CreateObject("ADODB.Connection")
' Husk at angive den rigtige sti til din database
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("/crm.mdb")
' Åben databaseforbindelsen
Conn.Open DSN
%>
  <% set rskunder2 = Conn.execute("SELECT * FROM Projekter ")
%>                   
             
                    <input type="text" name="Projekt" size="30" value="<%Response.Write rskunder1("Projekt")%>"></font></td>
<%
rskunder2.Close
set rskunder2 = Nothing
%>                   
                   
                  <td width="20" height="22"><font face="Verdana, Arial, Helvetica, sans-serif" size="1"></font></td>
                </tr>
                <tr>
                  <td width="109" height="22">
                  <font face="Verdana, Arial, Helvetica, sans-serif" size="1">
                  Type.:</font></td>
                  <td height="22" width="242"><font face="Verdana, Arial, Helvetica, sans-serif" size="1">
                    <select size="1" name="type">
                    <option selected>Samtale ud</option>
                    <option>Samtale ind</option>
                    <option>E-mail</option>
                    <option>Dokument</option>
                    <option>Møde ude</option>
                    <option>Møde inde</option>
                    <option>Info</option>
                    <option>Udsending</option>
                  </select></font></td>
                  <td width="20" height="22"><font face="Verdana, Arial, Helvetica, sans-serif" size="1"></font></td>
                </tr>
                <tr>
                  <td width="109" height="20">
                  <font face="Verdana, Arial, Helvetica, sans-serif" size="1">
                  Startdato.:</font></td>
                  <td height="20" width="242"><font face="Verdana, Arial, Helvetica, sans-serif" size="1">
                    <input type="text" name="start" size="30" value="<%Response.Write rskunder1("start")%>">
                    </font></td>
                  <td width="20" height="20"><font face="Verdana, Arial, Helvetica, sans-serif" size="1"></font></td>
                </tr>
                <tr>
                  <td width="109" height="22">
                  &nbsp;</td>
                  <td height="22" width="242"><font face="Verdana, Arial, Helvetica, sans-serif" size="1">
                    &nbsp;</font></td>
                  <td width="20" height="22"><font face="Verdana, Arial, Helvetica, sans-serif" size="1"></font></td>
                  <td width="157" height="22"><font face="Verdana, Arial, Helvetica, sans-serif" size="1"></font></td>
                  <td height="22" width="47">&nbsp;</td>
                </tr>
                <tr>
                  <td width="109" height="132"><font face="Verdana, Arial, Helvetica, sans-serif" size="1">Notat.:</font></td>
                  <td colspan="3" height="132" width="423"><font face="Verdana, Arial, Helvetica, sans-serif" size="1">
                    <textarea name="notat" rows="8" cols="50"><%Response.Write rskunder1("Notat")%></textarea></font></td>
                  <td height="132" width="47">&nbsp;</td>
                </tr>
                <tr>
                  <td width="109" height="22">
                  <font face="Verdana, Arial, Helvetica, sans-serif" size="1">
                  Prioritet</font></td>
                  <td height="22" width="242"><font face="Verdana, Arial, Helvetica, sans-serif" size="1">
                    <select size="1" name="Prioritetid">
                    <option>Lav</option>
                    <option selected>Normal</option>
                    <option>Høj</option>
                  </select></font></td>
                  <td width="20" height="22">&nbsp;</td>
                  <td width="157" height="22">&nbsp;</td>
                  <td height="22" width="47">&nbsp;</td>
                </tr>
                <tr>
                  <td width="109" height="22">
                  <font face="Verdana, Arial, Helvetica, sans-serif" size="1">
                  Ansvarlige</font></td>
                  <td height="22" width="242"><font face="Verdana, Arial, Helvetica, sans-serif" size="1">
                    <input type="text" name="ansvarlige" size="30" value="<%Response.Write rskunder1("ansvarlige")%>"></font></td>
                  <td width="20" height="22">&nbsp;</td>
                  <td width="157" height="22">&nbsp;</td>
                  <td height="22" width="47">&nbsp;</td>
                </tr>
                <tr>
                  <td width="109" height="22">
                  <font face="Verdana, Arial, Helvetica, sans-serif" size="1">
                  Udført</font></td>
                  <td height="22" width="242">
                  <font face="Verdana, Arial, Helvetica, sans-serif" size="1">
                    <input type="text" name="udført" size="30" value="<%Response.Write rskunder1("udført")%>"></font></td>
                  <td width="20" height="22">&nbsp;</td>
                  <td width="157" height="22">&nbsp;</td>
                  <td height="22" width="47">&nbsp;</td>
                </tr>
              </table>
            </td>
          </tr>
        </table>
        <table width="546" border="0">
          <tr>
            <td width="73" height="2"><b>
              &nbsp;<input type=hidden name=mode value=gem><Input type=submit Value=Tilf&oslash;j></b></td>
            <td width="463" height="2"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="2">
              </font></b></td>
          </tr>
        </table>
        <p>&nbsp;</p>
      </form>
      <p>&nbsp;</p>
      <p>&nbsp;</p>
      <p>&nbsp;</p>
    </td>
  </tr>
</table>
<p>

<%
rskunder1.Close
set rskunder1 = Nothing
%>
</p>

<% if request("mode") = "gem" then
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("/crm.mdb")
Conn.Open DSN

set rskunder = server.createobject("adodb.recordset")
rskunder.open ("SELECT * FROM aktiviteter WHERE opgaveid=" & request("opgaveid")), DSN, 1, 3

rskunder ("kundeid") = request.querystring("kundeid")
rskunder("titel") = request.form("titel")
rskunder("kontaktpersonid") = request.form("kontaktpersonid")
rskunder("Prioritetid") = request.form("Prioritetid")
rskunder("type") = request.form("type")
rskunder("start") = request.form("start")
rskunder("udført") = request.form("udført")
rskunder("notat") = request.form("notat")
rskunder("Projekt") = request.form("Projekt")
rskunder("ansvarlige") = request.form("ansvarlige")

rskunder.update
%>

<%
rskunder.Close
set rskunder = Nothing
end if
%>
<p>&nbsp;</p>
Avatar billede sp Nybegynder
11. maj 2003 - 16:03 #6
Du kunne prøve at starte med at ordne koden så den er lidt mere overskuelig.
Den er noget rodet.
Du skriver at det ikke virker. Kommer der nogen fejlmelding? Er du sikker på at recordsettet ikke er EOF? at den kan finde det i databasen?
Avatar billede sp Nybegynder
11. maj 2003 - 16:39 #7
Du kan ikke regne med at dine recordset vil virke efter så meget html-kode.
Prøv at overfør dem til variabler
F.eks. den første:

Du vil have kontaktpersonid vist
For at undgå fejl er det også en god idé med en if sætning
<%
set rs= Conn.execute("SELECT * FROM aktiviteter WHERE opgaveid=" & request("opgaveid"))
if NOT rs.EOF then
kontaktpersonid = rs("kontaktpersonid")
o.s.v alt hvad du vil have vist..
End if

Det kan du ihvertfald starte med...

mvh
SP
Avatar billede hede98 Nybegynder
11. maj 2003 - 18:03 #8
ja ja... man kan da altid være flink :-) undskyld jeg ikke ved så meget om ASP kode.... men jeg spurgte om noget på Eksperten.dk fordi her plejer man at få flink hjælp....
Avatar billede sp Nybegynder
11. maj 2003 - 18:09 #9
Ja det er jeg skam også.

Ja men det er jo meget kode. Du skal selv vide lidt om det også. Jeg kan sagtens ordne koden så det bliver fint og sikkert også virker:-)
Avatar billede hede98 Nybegynder
11. maj 2003 - 18:16 #10
sådan nu virker det... man jeg mangler en ting... hvordan indsætter jeg et "mellemrum" mellem Navn og Efternavn


<%
set rskunder2 = Conn.execute("SELECT * FROM Kontakpersoner WHERE kundeid=" & request("kundeid"))
if NOT rskunder2.EOF Then
  Response.Write "<select size=""1"" name=""D1"">"
  do while not rskunder2.EOF
    Response.Write "<option>" & rskunder1("kontaktpersonid") & "</option>"
    Response.Write "<option>" & rskunder2("Navn")& rskunder2("efternavn") & "</option>"
  rskunder2.MoveNext
  loop
Response.Write "</select>"
End if
%>
Avatar billede sp Nybegynder
11. maj 2003 - 18:55 #11
Sådan: " "
Avatar billede sp Nybegynder
11. maj 2003 - 18:56 #12
Ja du indsætter det
<% Response.Write "<option>" & rskunder2("navn")& " " & rskunder2("efternavn") & "</option>"
%>
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