/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Request.Form
Fra : Michael Tillgaard


Dato : 06-02-04 18:46

Hvad går galt her:

<%
Dim antalRigtige
antalRigtige = 0
If Request.Form("svar(spmaal.Fields.Item("spid").Value)") <> ""
Then

Jeg vil gerne hente/bruge "spid" da jeg bruger det i en form.

M.v.h.

Michael Tillgaard

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Jørn Andersen (06-02-2004)
Kommentar
Fra : Jørn Andersen


Dato : 06-02-04 19:32

On Fri, 6 Feb 2004 17:46:15 +0000 (UTC), Michael Tillgaard
<post@multibook.dk> wrote:

>Hvad går galt her:

Går der noget galt?
Hint: Får du en fejlmelding. Sker der ikke det du havde forventet?
Vi er ikke synske

><%
>Dim antalRigtige
>antalRigtige = 0
>If Request.Form("svar(spmaal.Fields.Item("spid").Value)") <> ""
>Then
>
>Jeg vil gerne hente/bruge "spid" da jeg bruger det i en form.

Når du har en så sammensat størrelse, så del den op og udskriv
resultatet af de enkelte variable.
Men jeg tvivler på, at du har et form-felt, der hedder:
svar(spmaal.Fields.Item("spid").Value)
- det ville i hvert fald aldrig virke.

Prøv evt. med:
Request.Form(svar(spmaal.Fields.Item("spid").Value))
- men det er lidt sævrt at gennemskue helt, hvad du vil opnå ...

Good luck!

--
Jørn Andersen,
Brønshøj

Michael Tillgaard (07-02-2004)
Kommentar
Fra : Michael Tillgaard


Dato : 07-02-04 00:08

Jørn Andersen wrote in dk.edb.internet.webdesign.serverside.asp:
> On Fri, 6 Feb 2004 17:46:15 +0000 (UTC), Michael Tillgaard
> <post@multibook.dk> wrote:
>
> >Hvad går galt her:
>
> Går der noget galt?
> Hint: Får du en fejlmelding. Sker der ikke det du havde forventet?
> Vi er ikke synske

Det er egentligt lidt for dårligt
>
> Prøv evt. med:
> Request.Form(svar(spmaal.Fields.Item("spid").Value))
> - men det er lidt sævrt at gennemskue helt, hvad du vil opnå ...

Ja det gik ikke rigtigt.

>
> Good luck!
>
> --
> Jørn Andersen,
> Brønshøj

Jeg har indsat en tal-værdi "spid" fra en tabel som "name" i en form.
Årsagen er at jeg skal have lavet en "dynamisk" form der henter noget
fra en database.

Jeg har lavet en recordset der hedder "spmaal" og derfra skal jeg
hente "spid".
Det kniber med at sætte værdien korekt ind:
If Request.Form("her skal værdien spid ind") <> "" Then

Jeg har prøvet forskellige muligheder men kan ikke knække nødden.

<%=(spmaal.Fields.Item("spid").Value)%>

Ellers tak for hjælpen.

M.v.h.

Michael Tillgaard

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jørn Andersen (07-02-2004)
Kommentar
Fra : Jørn Andersen


Dato : 07-02-04 02:37

On Fri, 6 Feb 2004 23:07:38 +0000 (UTC), Michael Tillgaard
<post@multibook.dk> wrote:

>Jeg har indsat en tal-værdi "spid" fra en tabel som "name" i en form.
>Årsagen er at jeg skal have lavet en "dynamisk" form der henter noget
>fra en database.

OK - men hvad mener du mere præcist med det?
Er det formularens navne, der skifter? Det er i hvert fald den retning
dine koder peger i retning af.

>Jeg har lavet en recordset der hedder "spmaal" og derfra skal jeg
>hente "spid".
>Det kniber med at sætte værdien korekt ind:

NB: Hvad sker der med dine forsøg: Får du en fejlmelding? Får du andre
værdier end forventet. Den slags oplysninger er ret vigtige - se fx:
<url: http://www.asp-faq.dk/article/?id=41>

>If Request.Form("her skal værdien spid ind") <> "" Then

Altså: Du vil hente en værdi fra en formular. Værdien er sendes med
formularen under det navn, der står i feltet "spid" - ?
Det lyder ret dynamisk, men OK ...

Værdien i feltet "spid" fra recordsettet "spmaal" hentes med:
myValue = spmaal("spid")
- drop .Fields.Item og .Value - det forvirrer bare

Skal det ind i en form *som navn*, så må det vel hedde:
<input type="text" value="" name="<%= myValue %>" />
- hvis det fx er et tekstfelt.


Det kan ofte være en fordel i fejlretningssituationer at tildele
variable mere end amn ellers ville gøre. Det tillader dig fx at
udskrive variablen med:

Response.Write myValue

- så du akn se, om du rent faktisk hiver den værdi ud, du forventer.


Så kan det godt være, at du til sidst ender med:
><%=(spmaal.Fields.Item("spid").Value)%>
- eller lidt kortere:
<%= spmaal("spid") %>


Good luck!

--
Jørn Andersen,
Brønshøj

Michael Tillgaard (08-02-2004)
Kommentar
Fra : Michael Tillgaard


Dato : 08-02-04 09:23

Jørn Andersen wrote in dk.edb.internet.webdesign.serverside.asp:
> On Fri, 6 Feb 2004 23:07:38 +0000 (UTC), Michael Tillgaard
> <post@multibook.dk> wrote:
>
Klip

Da min evner desværre ikke rækker så langt bruger jeg dreamweaver
programmet er en mega hjælp på mange områder.
Jeg er ved at lave en side hvor man kan svare på spørgsmål til en bog man
har læst og svare enten ja (true) eller nej (false).
Jeg vil helst have at det skal være så "dynamisk" som muligt.
Den form jeg har lavet henter spørgsmålene fra en tabel og den henter de
enkelte "names" fra samme tabel.
Min form ser ud som følger:

<form action="opgor.asp?bogid=<%=(valgtbog.Fields.Item("bogid").Value)%>"
method="post" name="Svar" id="Svar">
<%
While ((Repeat2__numRows <> 0) AND (NOT spmaal.EOF))
%>
<p> <%=(spmaal.Fields.Item("spmaal").Value)%>
<input type="radio"
name="svar<%=(spmaal.Fields.Item("spid").Value)%>" value="True" />
Ja
<input type="radio"
name="svar<%=(spmaal.Fields.Item("spid").Value)%>" value="False" />
Nej<br>
</p>
<%
Repeat2__index=Repeat2__index+1
Repeat2__numRows=Repeat2__numRows-1
spmaal.MoveNext()
Wend
%>
<p>
<input name="Submit" type="submit" value="Check dine svar" />
</p>
</form>

På den side hvor resulatet skal opgøres (opgor.asp) skal jeg have optalt
antal rigtige svar.

Jeg har tidligere brugt følgende:

<%
Dim antalRigtige
antalRigtige = 0
If Request.Form("Sv1") <> "" Then
If CBool(Request.Form("Sv1")) = (spmaal.Fields.Item("svar").Value) Then
antalRigtige = antalRigtige + 1
End If   
End If
%>

Men her har jeg på forhånd vist hvor mange spørgsmål der var til hver
enkelt bog og på forhånd vist hvad "name" var i formen.

Problemet her er mine names i formen. Hvordan får jeg
:"svar<%=(spmaal.Fields.Item("spid").Value)%>" ind Request.Form eller
skal jeg gå en hel anden vej.

M.v.h.

Michael Tillgaard


--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408929
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste