Avatar billede starf Nybegynder
11. februar 2004 - 13:43 Der er 15 kommentarer og
1 løsning

få form til at huske input

Hej

har en form, der laver en liste over filer i en mappe, som så bliver gemt i en database. Har forsøgt at få den til at huske hva man har valgt, så når man redigere den ikke skal til at vælge fil osv igen.. men kan ikke rigtig få det itl at virke.. her er min kode:

<%
mvirtual = "upload/katalog/"        'her billeder

set fso = Server.CreateObject("Scripting.FileSystemObject")
set mappe = fso.GetFolder(Server.MapPath(mvirtual))
set filer = mappe.files
tmp = "<SELECT SIZE=10 NAME=""filnavn"" CLASS=""field"" >" & VbCrLf
tmp = tmp & "<OPTION SELECTED VALUE=""=rs(""fil_valg"")"" & "VÆLG" & """"
tmp = tmp & ">-- VÆLG --</OPTION>" & VbCrLf
for each file in filer
        tmp = tmp & "<OPTION VALUE=""" & file.name & """"
        tmp = tmp & ">" & file.name & "</OPTION>" & VbCrLf
Next
tmp = tmp & "</SELECT>"
set filer = nothing
set mappe = nothing
set fso = nothing
Response.Write(tmp)
%>
Avatar billede eagleeye Praktikant
11. februar 2004 - 13:51 #1
Prøv at rette:
tmp = tmp & "<OPTION SELECTED VALUE=""=rs(""fil_valg"")"" & "VÆLG" & """"
tmp = tmp & ">-- VÆLG --</OPTION>" & VbCrLf


Til:
tmp = tmp & "<OPTION SELECTED VALUE=""" & rs("fil_valg") & """"
tmp = tmp & ">-- VÆLG --</OPTION>" & VbCrLf



Så indeholder option --VÆLG-- filnavnet.
Avatar billede eagleeye Praktikant
11. februar 2004 - 13:54 #2
Du kan gøre sådan her så filen skrives som nanvet for den som er valgt eller kan man ikke se hvilken fil man har valgt:

if len(""&rs("fil_valg"))>0 then
  tmp = tmp & "<OPTION SELECTED VALUE=""" & rs("fil_valg") & """>" & rs("fil_valg") & "</OPTION>" & vbCrLf
else
  tmp = tmp & "<OPTION SELECTED VALUE="""">-- VÆLG --</OPTION>" & VbCrLf
end if
Avatar billede starf Nybegynder
11. februar 2004 - 13:55 #3
Hmmm virker ikke.. der står stadig bare ---VÆLG----

min kode ser sådan her ud nu:)

<%
mvirtual = "upload/katalog/"        'her billeder

set fso = Server.CreateObject("Scripting.FileSystemObject")
set mappe = fso.GetFolder(Server.MapPath(mvirtual))
set filer = mappe.files
tmp = "<SELECT SIZE=10 NAME=""filnavn"" CLASS=""field"" >" & VbCrLf
tmp = tmp & "<OPTION SELECTED VALUE=""" & rs("fil_valg") & """"
tmp = tmp & ">-- VÆLG --</OPTION>" & VbCrLf
for each file in filer
        tmp = tmp & "<OPTION VALUE=""" & file.name & """"
        tmp = tmp & ">" & file.name & "</OPTION>" & VbCrLf
Next
tmp = tmp & "</SELECT>"
set filer = nothing
set mappe = nothing
set fso = nothing
Response.Write(tmp)
%>
Avatar billede starf Nybegynder
11. februar 2004 - 14:05 #4
med den sidste kode.. bliver vælg feltet bare tom...

har sat det op sådan her:

<%
mvirtual = "upload/katalog/"        'her billeder

set fso = Server.CreateObject("Scripting.FileSystemObject")
set mappe = fso.GetFolder(Server.MapPath(mvirtual))
set filer = mappe.files
tmp = "<SELECT SIZE=10 NAME=""filnavn"" CLASS=""field"" >" & VbCrLf
if len(""&rs("fil_valg"))>0 then
  tmp = tmp & "<OPTION SELECTED VALUE=""" & rs("fil_valg") & """>" & rs("fil_valg") & "</OPTION>" & vbCrLf
else
  tmp = tmp & "<OPTION SELECTED VALUE="""">-- VÆLG --</OPTION>" & VbCrLf
end if
for each file in filer
        tmp = tmp & "<OPTION VALUE=""" & file.name & """"
        tmp = tmp & ">" & file.name & "</OPTION>" & VbCrLf
Next
tmp = tmp & "</SELECT>"
set filer = nothing
set mappe = nothing
set fso = nothing
Response.Write(tmp)
%>
Avatar billede eagleeye Praktikant
11. februar 2004 - 15:02 #5
ja vælg feltet bliver tom med den sidset kode hvis der ikke er valgt en fil.
Avatar billede eagleeye Praktikant
11. februar 2004 - 15:06 #6
Eller så gør sådan her:



<%
mvirtual = "upload/katalog/"        'her billeder

set fso = Server.CreateObject("Scripting.FileSystemObject")
set mappe = fso.GetFolder(Server.MapPath(mvirtual))
set filer = mappe.files
tmp = "<SELECT SIZE=10 NAME=""filnavn" CLASS=""field"" >" & VbCrLf
tmp = tmp & "<OPTION SELECTED VALUE=""" & rs("fil_valg") & """>" & rs("fil_valg") & "</OPTION>" & vbCrLf
for each file in filer
        tmp = tmp & "<OPTION VALUE=""" & file.name & """"
        tmp = tmp & ">" & file.name & "</OPTION>" & VbCrLf
Next
tmp = tmp & "</SELECT>"
set filer = nothing
set mappe = nothing
set fso = nothing
Response.Write(tmp)
%>
Avatar billede starf Nybegynder
11. februar 2004 - 15:07 #7
nej den gør det også selv om der står et fil navn i "fil_valg" i databasen...
Avatar billede starf Nybegynder
11. februar 2004 - 15:10 #8
stadig det samme.. og har tjekket den skriver filnavnet i databasen.....
Avatar billede eagleeye Praktikant
11. februar 2004 - 15:14 #9
Bruger du rs("fil_valg") før i koden´?
Avatar billede eagleeye Praktikant
11. februar 2004 - 15:17 #10
For dette skal virke:

if len(""&rs("fil_valg"))>0 then
  tmp = tmp & "<OPTION SELECTED VALUE=""" & rs("fil_valg") & """>" & rs("fil_valg") & "</OPTION>" & vbCrLf
else
  tmp = tmp & "<OPTION SELECTED VALUE="""">-- VÆLG --</OPTION>" & VbCrLf
end if



----
men prøv evt. når du har åbnet recordset at skrive:

fil_valg = rs("fil_valg")

og så ret i koden hvor der sår rs("fil_valg") så skriv fil_valg, og så bliver den kode:

if len(""&fil_valg)>0 then
  tmp = tmp & "<OPTION SELECTED VALUE=""" & fil_valg & """>" & fil_valg & "</OPTION>" & vbCrLf
else
  tmp = tmp & "<OPTION SELECTED VALUE="""">-- VÆLG --</OPTION>" & VbCrLf
end if
Avatar billede starf Nybegynder
11. februar 2004 - 15:29 #11
nej filvalg bliver KUN brugt der i koden!


har prøvet begge måder du har skrevet nu.. virker stadig ikke:

<%
mvirtual = "upload/katalog/"        'her billeder

set fso = Server.CreateObject("Scripting.FileSystemObject")
set mappe = fso.GetFolder(Server.MapPath(mvirtual))
set filer = mappe.files
tmp = "<SELECT SIZE=10 NAME=""filnavn"" CLASS=""field"" >" & VbCrLf
if len(""&rs("fil_valg"))>0 then
  tmp = tmp & "<OPTION SELECTED VALUE=""" & rs("fil_valg") & """>" & rs("fil_valg") & "</OPTION>" & vbCrLf
else
  tmp = tmp & "<OPTION SELECTED VALUE="""">-- VÆLG --</OPTION>" & VbCrLf
end if
for each file in filer
        tmp = tmp & "<OPTION VALUE=""" & file.name & """"
        tmp = tmp & ">" & file.name & "</OPTION>" & VbCrLf
Next
tmp = tmp & "</SELECT>"
set filer = nothing
set mappe = nothing
set fso = nothing
Response.Write(tmp)
%>
Avatar billede eagleeye Praktikant
11. februar 2004 - 15:39 #12
virker stadig ikke...?? hvordan ikke
Avatar billede starf Nybegynder
11. februar 2004 - 15:56 #13
Avatar billede starf Nybegynder
11. februar 2004 - 16:09 #14
og hvis man vælger det tomme felt som du kan se skriver den ikk enoget ind i databasen...
Avatar billede eagleeye Praktikant
11. februar 2004 - 16:50 #15
Prøv lige at rette if sætningen fra:

if len(""&rs("fil_valg"))>0 then
  tmp = tmp & "<OPTION SELECTED VALUE=""" & rs("fil_valg") & """>" & rs("fil_valg") & "</OPTION>" & vbCrLf
else
  tmp = tmp & "<OPTION SELECTED VALUE="""">-- VÆLG --</OPTION>" & VbCrLf
end if

Til dette:

fil_valg = rs("fil_valg")
if len(""&fil_valg)>0 then
  tmp = tmp & "<OPTION SELECTED VALUE=""" & fil_valg & """>" & fil_valg & "</OPTION>" & vbCrLf
else
  tmp = tmp & "<OPTION SELECTED VALUE="""">-- VÆLG --</OPTION>" & VbCrLf
end if
Avatar billede starf Nybegynder
11. februar 2004 - 17:15 #16
takker virker nu :)
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