Avatar billede c-lund Nybegynder
15. juni 2006 - 12:03 Der er 4 kommentarer

Hent fra DB

Hey, jeg skal lave et system til indrykning af annoncer. det skal foregå ligesom på www.dba.dk. I første formular box står der x antal kategorier fra en database, når en af disse vælges, så kommer der en nye box frem, med data fra databasen der passe til den pågældende kategori. osv.

hvaddan laves det, skal man hente alt data ud med det samme, eller bare hente noget ud når det skal bruges?
Avatar billede fennec Nybegynder
15. juni 2006 - 12:24 #1
Roenving har et eks liggende på sin side:
http://roenving.users.whitehat.dk/WD4Selects-beta.html
Avatar billede c-lund Nybegynder
15. juni 2006 - 12:52 #2
test
Avatar billede c-lund Nybegynder
15. juni 2006 - 12:55 #3
Hvordan koder man det med noget database?

Jeg er ude i at lave noget i den stil, hvis muligt.
Bortset fra at den ikke skal skrive et resultat til en text box men alle resultater til en select box. jeg ved bare ikke hvordan

<script language="javascript">
<!--
function loadFile(file)
{
  var scriptTag = document.getElementById('loadScript');
  var head = document.getElementsByTagName('head').item(0)
  if(scriptTag) head.removeChild(scriptTag);
  script = document.createElement('script');
  script.src = file;
  script.type = 'text/javascript';
  script.id = 'loadScript';
  head.appendChild(script)
}
//-->
</script>

<br>
    <%
        strSQL = "Select Id, Navn from Kategorier order by Navn"
        Set rs = conn.execute(strSQL)
        'Id = rs("Id")
    %>
    <select size="7" id="SektionId" name="SektionId" onChange="java script:loadFile('hentannonceinfo.asp?nr='+this.value)">
    <%
           
            Do while not rs.EOF
                Id = rs("Id")
                Navn = rs("Navn")
                Response.write("<option value=""" & Id & """>" & Navn & "</option>")
            rs.MoveNext
            Loop
    %>       
    </select>
    <input id="Art" name="Art" value="">
---------
<%@ LANGUAGE = "VBScript" %>
<%
Response.ContentType="text/js"

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

nr = Request.QueryString("nr")

strSQL = "SELECT * FROM Produkt_Art WHERE Kat_Id = " & nr &""
Set rs = Conn.Execute(strSQL)

if not rs.eof then

%>
document.getElementById("Art").value="<%=rs("Art")%>";
<%
else
%>
document.getElementById("Art").value="Indtast selv by";
<%
end if
%>
Avatar billede fennec Nybegynder
15. juni 2006 - 13:27 #4
Hvis du bruger roenving's løsning, skal du bare fylde alle data ind i de JavaScript Array han har. De data selecter du selvfølgelig bare fra databasen, og udskriver dem så de følger Array opbygningen.

Ellers kan du bruge reload metoden:
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
<!--
function reloadPage()
{
    document.myForm.mode.value = "refresh"   
    document.myForm.submit()
}
//-->
</SCRIPT>
<form name="myForm" method="get" action="<%= scriptname %>" onSubmit="this.mode.value='save'">
<input type="Hidden" name="mode" value="">
<%
sql = "SELECT ID, name FROM AthenaWTM_ProductGroup ORDER BY name"
set oRs = oConn.Execute(sql) %>
<select id="groupID" name="groupID" onChange="reloadPage()">
<%
do while not oRs.eof
  if groupID="" then groupID = oRs("id")%>           
  <option value="<%= oRs("id") %>" <% If groupID=oRs("id") then Response.write "selected" %>><%= oRs("name") %></option>
<% oRs.moveNext
loop
%>               
</select>
<%
sql = "SELECT Id, Name FROM AthenaWTM_PRODUCTS WHERE groupID=" & groupID & " ORDER BY name"
set oRs = oConn.Execute(sql)   
%>   
<select id="ProductID" name="ProductID">
<%
do while not oRs.eof %>           
  <option value="<%= oRs("id") %>" ><%= oRs("name") %></option>
<%
  oRs.moveNext
loop %>               
</select>
<input type="Submit" value="Gem">

</form>
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