Avatar billede prebenrunge Nybegynder
07. juni 2005 - 10:01 Der er 9 kommentarer og
1 løsning

Kommaseparator i "form Method=post kontra komma i decimaltal

Jeg sender en form med Method="Post" og mine felter findes flere gange. form post sender variablen som en lang streng med komma som separator hvilket er OK da jeg bruger split til at dele strengen op - MEN når jeg så bruger et decimaltal, hvilket jeg gør og som dansk bruger vi jo komma til decimaltal. DET KAN SPLIT IKKE LI, da der jo findes både komma som separator og decimal.
Nogen der har en god ide, eller som ved om jeg kan få Post method til at benytte andre separator end komma, da jeg jo ikke bare lige kan ændre det danske komma i decimaltal.
Hilsen Preben
Avatar billede busschou Praktikant
07. juni 2005 - 10:23 #1
Hvordan er din form?
Normalt har man jo flere forskellige felter "navn" "adresse" osv osv
Er det fordi du har et felt som allerede indeholder en kommasepereret liste?
For så kan du jo bare lave den liste fx semikolon sepereret i stedet
Avatar billede Syska Mester
07. juni 2005 - 10:24 #2
kan du ikke sende dem som et array? og så løbe det igennem i ASP med en foreach eller hvad den nu hedder i ASP.....altså..

<input type="text" name="navn[0]">
<input type="text" name="navn[1]">
<input type="text" name="navn[2]">

eller er der en grund til at de hedder det samme?
Avatar billede busschou Praktikant
07. juni 2005 - 10:29 #3
ahh de hedder det samme ok, fattede jeg ikke lige ;o)
Det er umiddelbart uhænsigtmæssig at kalde felter det samme i en form da man jo så ikke kan skille dem ad fra hinanden - slet ikke med dit problem
Du kan også bare kalde dem name="navn1" til name="navn10" og så løbe dem igennem dynamisk som buzzzz foreslår
Jeg tror dog ikke du kan sende dem afsted som et array!
Avatar billede prebenrunge Nybegynder
07. juni 2005 - 10:37 #4
Felterne har samme navne for det er en række felter (eks. navn, adresse postnr) der gentages for hvert navn i listen med en for/next løkke. Både fordi jeg ikke kender antallet af poster og fordi jeg ikke har lyst til at have så mange forskellige felt navne at opdaterer, bruger jeg for/next eller do/while til at liste og/eller opdaterer dem.
Det er heller ikke noget problem for når hele formen postes, indeholder hvert felt jo bare alle navne med et komme som separator. denne streng af navne, adresser, postnr. osv. lægges EFTER formen er sendt i array med split funktionen. Virker udmærket men separator tegnet som er et komma, er i konflikt med decimal kommaet.
Avatar billede busschou Praktikant
07. juni 2005 - 10:59 #5
Ja men du kan ikke skælne mellem to kommaer :o)
Så du er nød til at finde en anden løsning
Enten bruge '.' i dine tal frem for ','
Eller også lave din funktionalitet om
Når du alligevel har en løkke er der jo intet i vejen for at nummererer dem i din løkke
Du løber igennem og tæller fx 'i' op , jamen så har du jo "name='adresse'"&i - og din form er derved dynamisk
Antallet kan du jo også overføre. evt i en session.
så når du henter dine variable igen så ved du hvor mange der er, og så laver du igen en løkke :o)
Avatar billede busschou Praktikant
07. juni 2005 - 11:03 #6
Du må vel også have samme problem i adressen? I min adresse er der da indeholdt et komma som seperator fordi jeg bor i nr 25, 2sal lejl 25 sådan her 25,2-25
Avatar billede prebenrunge Nybegynder
07. juni 2005 - 14:30 #7
ja alle steder hvor der kan forekomme kommaer i felter. Jeg "har andre løsninger",
med replace osv. men mit spørgsmål her går på om man kan ændre separator kommaet i Method="post" og i givet fald hvordan
Avatar billede busschou Praktikant
07. juni 2005 - 16:27 #8
mit bud er helt klart _nej_ at du kan ikke ændre det
Jeg har aldrig nogen sinde hørt om det og kan absolut ikke se nogen grund til det.
Hvis man kunne ændre det ville det jo være fuldstændig uforudsigeligt hvordan POST opfører sig i forskellige browsere - og det er jo meningsløst hvis man ikke kan stole på POST fungerer som den gør :o)
Avatar billede prebenrunge Nybegynder
07. oktober 2011 - 08:43 #9
ærgeligt, tråden lukkes uden resultat.
Avatar billede Syska Mester
07. oktober 2011 - 11:13 #10
Komma burde blive url encoded.

Nu er dette spm også 6 år gammelt.

mvh
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