/ 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
Adskil flere inputfelter af samme navn...
Fra : Magnus


Dato : 11-07-06 18:59

Jeg ønsker at rette i flere database poster på en gang til det formål ender
leg med en formular med følgende tre felter som gentager sig for hver af det
antal poster jeg skal rette.


<input class="input" type="hidden" name="id" value='" & RS("id") & "'><br>
<input class="input" type="text" name="pid" value='" & RS("pid") & "'><br>
<input class="input" type="text" name="pid2" value='" & RS("pid2") & "'><br>

<input class="input" type="hidden" name="id" value='" & RS("id") & "'><br>
<input class="input" type="text" name="pid" value='" & RS("pid") & "'><br>
<input class="input" type="text" name="pid2" value='" & RS("pid2") & "'><br>

<input class="input" type="hidden" name="id" value='" & RS("id") & "'><br>
<input class="input" type="text" name="pid" value='" & RS("pid") & "'><br>
<input class="input" type="text" name="pid2" value='" & RS("pid2") & "'><br>


Med denne gennemløber jeg alle værdierne i inputfeltet "id":

For Each Subkey In Request.Form("id")
Response.Write "ID: " & Subkey & "<br>"
Response.Write "Pid: " & Request.Form("pid") & "<br>"
Response.Write "Pid2: " & Request.Form("pid2") & "<br>"
Next

Men inputtet fra felterne pid og pid2 bliver jo f.eks. 65, 45, 56 dvs. alle
pid felterne adskilt af komma men jeg vil jo kun have enkeltvis til
indkrivning i den rette database post.


Hvordan kan jeg det?

/Magnus



 
 
Jan Vinten (12-07-2006)
Kommentar
Fra : Jan Vinten


Dato : 12-07-06 10:16


Magnus wrote:
> Jeg ønsker at rette i flere database poster på en gang til det formål ender
> leg med en formular med følgende tre felter som gentager sig for hver af det
> antal poster jeg skal rette.
>
>
> <input class="input" type="hidden" name="id" value='" & RS("id") & "'><br>
> <input class="input" type="text" name="pid" value='" & RS("pid") & "'><br>
> <input class="input" type="text" name="pid2" value='" & RS("pid2") & "'><br>
>
> <input class="input" type="hidden" name="id" value='" & RS("id") & "'><br>
> <input class="input" type="text" name="pid" value='" & RS("pid") & "'><br>
> <input class="input" type="text" name="pid2" value='" & RS("pid2") & "'><br>
>
> <input class="input" type="hidden" name="id" value='" & RS("id") & "'><br>
> <input class="input" type="text" name="pid" value='" & RS("pid") & "'><br>
> <input class="input" type="text" name="pid2" value='" & RS("pid2") & "'><br>
>
>
> Med denne gennemløber jeg alle værdierne i inputfeltet "id":
>
> For Each Subkey In Request.Form("id")
> Response.Write "ID: " & Subkey & "<br>"
> Response.Write "Pid: " & Request.Form("pid") & "<br>"
> Response.Write "Pid2: " & Request.Form("pid2") & "<br>"
> Next
>
> Men inputtet fra felterne pid og pid2 bliver jo f.eks. 65, 45, 56 dvs. alle
> pid felterne adskilt af komma men jeg vil jo kun have enkeltvis til
> indkrivning i den rette database post.
>
>
> Hvordan kan jeg det?
>
> /Magnus


Hej Magnus,

Desværre forstår jeg ikke helt dit indlæg - så forklar gerne disse
detaljer lidt nærmere:

Hvorfor laver du 3*3 input felter der viser akurat det samme - med
hvilket formål? Det må angiveligt være fuldstændig det samme der
kommer i alle 9 input felter. Skulle der ikke ha' været en MoveNext i
mellem?

Ydermere forslår jeg du benytter dig af arrays i forbindelse med
udpluk af forms efterfølgende.

Hvis jeg har misforstået dit indlæg fuldstændig - så ved gerne
tilbage - evt. med lidt flere detaljer.

/ Jan


Magnus (12-07-2006)
Kommentar
Fra : Magnus


Dato : 12-07-06 21:02

> <input class="input" type="hidden" name="id" value='" & RS("id") & "'><br>
> <input class="input" type="text" name="pid" value='" & RS("pid") & "'><br>
> <input class="input" type="text" name="pid2" value='" & RS("pid2") &
> "'><br>
MoveNext
> <input class="input" type="hidden" name="id" value='" & RS("id") & "'><br>
> <input class="input" type="text" name="pid" value='" & RS("pid") & "'><br>
> <input class="input" type="text" name="pid2" value='" & RS("pid2") &
> "'><br>
MoveNext
> <input class="input" type="hidden" name="id" value='" & RS("id") & "'><br>
> <input class="input" type="text" name="pid" value='" & RS("pid") & "'><br>
> <input class="input" type="text" name="pid2" value='" & RS("pid2") &
> "'><br>
MoveNext

Du har ret der er selvfølgelig et MoveNext imellem hver at de tre grupper så
jeg får i dette tilfælde udskrevet tre poster fra databasen i en formular
hvor jeg kan rette i teksen i to af felterne.
Så trykker jeg gem hvordan gemmer jeg så i min DB noget i stil som herunder:

For Each Subkey In Request.Form("id")
SQL = "UPDATE Billeder SET pid='" & Request.Form("pid") & "', pid2='" &
Request.Form("pid2") & "' WHERE id=" & Subkey
Conn.Execute(SQL)
next

Men Request.Form("pid") og Request.Form("pid2") indeholder jo alle tre
pid-inputfelter adskilt af komma og ikke kun den som hører til den post med
id nr svarende til det skjulte felt med database postens id nr.


/Magnus



Jan Vinten (12-07-2006)
Kommentar
Fra : Jan Vinten


Dato : 12-07-06 21:57


Magnus wrote:
> > <input class="input" type="hidden" name="id" value='" & RS("id") & "'><br>
> > <input class="input" type="text" name="pid" value='" & RS("pid") & "'><br>
> > <input class="input" type="text" name="pid2" value='" & RS("pid2") &
> > "'><br>
> MoveNext
> > <input class="input" type="hidden" name="id" value='" & RS("id") & "'><br>
> > <input class="input" type="text" name="pid" value='" & RS("pid") & "'><br>
> > <input class="input" type="text" name="pid2" value='" & RS("pid2") &
> > "'><br>
> MoveNext
> > <input class="input" type="hidden" name="id" value='" & RS("id") & "'><br>
> > <input class="input" type="text" name="pid" value='" & RS("pid") & "'><br>
> > <input class="input" type="text" name="pid2" value='" & RS("pid2") &
> > "'><br>
> MoveNext
>
> Du har ret der er selvfølgelig et MoveNext imellem hver at de tre grupper så
> jeg får i dette tilfælde udskrevet tre poster fra databasen i en formular
> hvor jeg kan rette i teksen i to af felterne.
> Så trykker jeg gem hvordan gemmer jeg så i min DB noget i stil som herunder:
>
> For Each Subkey In Request.Form("id")
> SQL = "UPDATE Billeder SET pid='" & Request.Form("pid") & "', pid2='" &
> Request.Form("pid2") & "' WHERE id=" & Subkey
> Conn.Execute(SQL)
> next
>
> Men Request.Form("pid") og Request.Form("pid2") indeholder jo alle tre
> pid-inputfelter adskilt af komma og ikke kun den som hører til den post med
> id nr svarende til det skjulte felt med database postens id nr.
>
>
> /Magnus



Hej Magnus,

Nu tror jeg, at jeg er lidt mere med på hvad du søger her!

Måden jeg umiddelbart ville gribe det an på er som nedenstående:

For gblCount = 1 To 9 Step 3
<input class="input" type="hidden" name="id_<%=gblCount%>" value='"
& RS("id") & "'><br>
<input class="input" type="text" name="pid_<%=gblCount+1%>"
value='" & RS("pid") & "'><br>
<input class="input" type="text" name="pid_<%=gblCount+2%>" value='"
& RS("pid2") & "'><br>
rs.MoveNext
Next

Når du så skal trække dine data ud forslår jeg du benytter dig af
nedenstående løsning:

For gblCount = 1 To 9 Step 3
SQL = "UPDATE Billeder SET pid='" & Request.Form("pid_" & gblCount+1)
& "', pid2='" & Request.Form("pid_" & gblCount+2) & "' WHERE id=" &
Request.Form("id_" & gblCount)
Conn.Execute(SQL)
Next

Jeg har på ingen måde testet ovenstående - men mener, at løsningen
burde virke.

Ligeledes kommer du ikke ind i den problematik, at der kan være nogle
komma seprationer der fejler ved din For Each løkke. (såfremt at dine
input felter indeholder komma)

Har du stadigvæk problemer - så lad høre fra dig!

Happy coding!

/ Jan


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

Månedens bedste
Årets bedste
Sidste års bedste