Spørgsmålet: Men hvordan sætter jeg dropdown menu´en, så den automatisk viser det billed (f.eks. 2_Stor_Forside) som kortet er gemt med fra starten, istedet for dropdown menuen viser det først kort (1_Stor_Forside fra produkt billeder mappen, også kan man ellers side og finde netop lige det billed som man har valgt fra starten... Dette tager ekstra langtid, når det aligevel ikke var i netop den dropdown box man ville ændre noget i.
Grundet til jeg spørger om dette er, fordi hvergang jeg skal ind og ændre i et kort, så skal jeg finde kortets billed igen, da den ikke har gemt mit korts billed i selve dropdown boxen..
du kan gøre det med en if... du må ved på en eller anden måde hvilket billede der er gemt sammen med i starten..
fx.
<table border="0" width="49" id="table2"> <tr> <td width="43" align="left"> <p align="center"><font face="Arial"><font size="2">Forside<br> <% '*************************************************** sql = "SELECT forside FROM tabel where id = " & id set rsForside = rs.execute(sql) '*************************************************** Set fso = CreateObject("Scripting.FileSystemObject") Set folderObject = fso.GetFolder(Server.MapPath("billeder/produkt_billeder")) Set filer = FolderObject.Files %></font><select name="forside" size="1" cols="40"> <%For Each File In filer if File.Name = rsForside("forside") then response.write "<option value=""" & File.Name & """ selected>" & File.Name & "</option>" else response.write "<option value=""" & File.Name & """>" & File.Name & "</option>" end if Next%> </select></font><font face="Arial" size="2"><%=rs("forside")%></font></td> </tr> </table>
så skal du rette det der står imellem *******'erne, til at være der hvor du henter dit billedenavn ud.. samtidig så skal du rette i denne linie: if File.Name = rsForside("forside") then så feltnavnet matcher det felt du har i databasen..
ellebaek>>> Hvad mener du præcist med det feltnavn.? Jeg har rettet kode stumpen til dette: <td width="43" align="left"> <p align="center"><font face="Arial"><font size="2">Forside<br> <% '*************************************************** sql = "SELECT forside FROM kort where id = " & id set rsForside = rs.execute(sql) '*************************************************** Set fso = CreateObject("Scripting.FileSystemObject") Set folderObject = fso.GetFolder(Server.MapPath("billeder/produkt_billeder")) Set filer = FolderObject.Files %></font><select name="forside" size="1" cols="40"> <%For Each File In filer if File.Name = rsForside("forside") then response.write "<option value=""" & File.Name & """ selected>" & File.Name & "</option>" else response.write "<option value=""" & File.Name & """>" & File.Name & "</option>" end if Next%> </select></font><font face="Arial" size="2"><%=rs("forside")%></font></td> </tr> </table>
Også for jeg denne her fejl: Forside
Microsoft VBScript runtime error '800a01b6'
Object doesn't support this property or method: 'Execute'
/retkort.asp, line 166
Linje 166= set rsForside = rs.execute(sql)
Jeg kan fortælle at forside billederne bliver hentet fra denne sti i database: kort>forside
<table border="0" width="49" id="table2"> <tr> <td width="43" align="left"> <p align="center"><font face="Arial"><font size="2">Forside<br> <% '*************************************************** sql = "SELECT forside FROM kort where id = " & id set rsForside = rs.execute(sql) '*************************************************** Set fso = CreateObject("Scripting.FileSystemObject") Set folderObject = fso.GetFolder(Server.MapPath("billeder/produkt_billeder")) Set filer = FolderObject.Files %></font><select name="forside" size="1" cols="40"> <%For Each File In filer if File.Name = rsForside("forside") then response.write "<option value=""" & File.Name & """ selected>" & File.Name & "</option>" else response.write "<option value=""" & File.Name & """>" & File.Name & "</option>" end if Next%> </select></font><font face="Arial" size="2"><%=rs("forside")%></font></td> </tr> </table>
nu skal du bare vide hvad det er for et kort du er ved at rette.. det er dit id, det skal du tilpasse. og det fejlen betyder er, at du ikke har en connection til databasen ved navn rs.
du må have en connection med et eller andet navn, det skal du sætte i stedet for rs i rs.execute(sql). håber du forstår, for er ret træt efterhånden ;-)
Må ærlig talt indrømme at det ikke er min stærke side, så har vedhæftet en lille version af min .db hvis det kan hjælpe med en connection: www.macpack.dk/db.zip
jeg har en tideligere connection som hedder: <% Set conn = server.CreateObject("ADODB.Connection") conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("../db/db.mdb") sql = "select * from kort order by beskrivelsestitel asc" Set rs = Conn.Execute(sql) %>
Fandme nice ellebaek... Nu virker det!!! Jeg burde give dig points nu, men har et aller sidste spørgsmål som jeg ikke selv kan tricke, så vil høre om du kan klare den i dette her spam, eller om jeg skal lave et nyt spam.?
Spørgsmål: Jeg har 2 dropdowns her som også hedder (Vælg Menu) og (Vælg Sub Menu). Det er tekst den henter ud fra min db, og her har jeg det samme problem som med billederne.. Altså jeg skal vælge menu og sub menu hvergang jeg skal ændre i kortet, da den automatisk vælger den tekst i db´en som starter med f.eks. (A), og ikke vælger den som den har fået tildelt..
Kode stumpen: <select name="menu" size="1" cols="40"> <option>Vælg menu</option> <%do while not rs3.EOF%> <option value="<%=rs3("menunavn")%>"><%=rs3("menunavn")%></option> <% rs3.movenext loop %> </select></font><font size="2"> </font></font> </td> <td width="190" align="left"> <font face="Arial" size="2"> <% sql2 = "select distinct subnavn from menu order by subnavn asc" Set rs2 = Conn.Execute(sql2) %> </font><font face="Arial"> <select name="sub" size="1" cols="40"> <option>Vælg submenu</option> <%do while not rs2.EOF%> <option value="<%=rs2("subnavn")%>"><%=rs2("subnavn")%></option> <% rs2.movenext loop %> </select></font></td>
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.