/ 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
Overførsel af 'flag'
Fra : Kurt G


Dato : 08-03-07 13:39

Jeg har en søgeformular, hvor 'data' skal overføres til en anden side, hvor
resultatet vises.
På søgeformularen er der flere checkboxe, som jeg på siden med resultatet
gerne vil bruge til at vise forskellige faste tekster.

Eks:
<input type="checkbox" name="C9" value="ON" checked>

På resultatsiden vil jeg gerne bruge dette som et flag, men det er ikke
lykkedes. Jeg har kikket lidt i en bog om det og derfra konkluderet, at det
skulle kunne bruges således (VC9 bruges som flag flere steder):

Select Case request.form("C9")
Case "on"
VC9 = 1
Case else
VC9 = 0
End Select

Der er prøvet med både "on" og "Cecked".

Det virker imidlertid ikke.

Hvordan skal man gøre?

Mvh Kurt



 
 
Jan Vinten (08-03-2007)
Kommentar
Fra : Jan Vinten


Dato : 08-03-07 22:44

On Mar 8, 1:39 pm, "Kurt G" <kur...@guldbaek.net> wrote:
> Jeg har en søgeformular, hvor 'data' skal overføres til en anden side, hvor
> resultatet vises.
> På søgeformularen er der flere checkboxe, som jeg på siden med resultatet
> gerne vil bruge til at vise forskellige faste tekster.
>
> Eks:
> <input type="checkbox" name="C9" value="ON" checked>
>
> På resultatsiden vil jeg gerne bruge dette som et flag, men det er ikke
> lykkedes. Jeg har kikket lidt i en bog om det og derfra konkluderet, at det
> skulle kunne bruges således (VC9 bruges som flag flere steder):
>
> Select Case request.form("C9")
> Case "on"
> VC9 = 1
> Case else
> VC9 = 0
> End Select
>
> Der er prøvet med både "on" og "Cecked".
>
> Det virker imidlertid ikke.
>
> Hvordan skal man gøre?
>
> Mvh Kurt

Hej Kurt,

Et hurtigt gæt - og kun et gæt! I din select case checker du for: "on"
- prøv "ON" og se om det ikke virker!



God fornøjelse,
Jan


Kurt G (08-03-2007)
Kommentar
Fra : Kurt G


Dato : 08-03-07 22:58

> Der er prøvet med både "on" og "Cecked".
> Det virker imidlertid ikke.
> Hvordan skal man gøre?
>
> Mvh Kurt

Hej Kurt,

Et hurtigt gæt - og kun et gæt! I din select case checker du for: "on"
- prøv "ON" og se om det ikke virker!



God fornøjelse,
Jan

Ærgerligt, men det hjalp ikke!!!
/Kurt



Jens Gyldenkærne Cla~ (08-03-2007)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 08-03-07 23:44

Kurt G skrev:

> <input type="checkbox" name="C9" value="ON" checked>
>
> På resultatsiden vil jeg gerne bruge dette som et flag, men
> det er ikke lykkedes. Jeg har kikket lidt i en bog om det og
> derfra konkluderet, at det skulle kunne bruges således (VC9
> bruges som flag flere steder):
>
> Select Case request.form("C9")
> Case "on"

[snip]

> Der er prøvet med både "on" og "Cecked".

1) Strengsammenligninger i asp er versalfølsomme (så "on" != "ON")

2) "checked" er en egenskab ved en checkbox - ikke værdien (så
"checked" er ikke det du skal teste på.

3) Hvis du har flere C9-felter på siden, og der er hak i mindst to
af dem, vil den værdi du modtager ikke være en simpel streng men en
liste.


Du kan gøre fejlfindingen en del lettere ved at anvende variable:

Dim strC9
strC9 = Request.Form("C9")

Response.write "strC9: " & strC9 & "<br>"
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Kurt G (09-03-2007)
Kommentar
Fra : Kurt G


Dato : 09-03-07 09:25

> 1) Strengsammenligninger i asp er versalfølsomme (så "on" != "ON")
>
> 2) "checked" er en egenskab ved en checkbox - ikke værdien (så
> "checked" er ikke det du skal teste på.
>
> 3) Hvis du har flere C9-felter på siden, og der er hak i mindst to
> af dem, vil den værdi du modtager ikke være en simpel streng men en
> liste.
>
>
> Du kan gøre fejlfindingen en del lettere ved at anvende variable:
>
> Dim strC9
> strC9 = Request.Form("C9")
>
> Response.write "strC9: " & strC9 & "<br>"
> --
> Jens Gyldenkærne Clausen

Det har jeg nu prøvet, og strC9 er tom, selv om der er sat hak i checkboxen
C9.

I adresselininen, hvor data returneres, står bl.a. dette:
'FUType=&Emne=&arkivnavn=&C9=ON'
Burde strC9 så ikke skrive 'ON'?

Er der noget, jeg totalt har misforstået?

/Kurt



Jørn Andersen (09-03-2007)
Kommentar
Fra : Jørn Andersen


Dato : 09-03-07 13:11

On Fri, 9 Mar 2007 09:24:46 +0100, "Kurt G" <kurt_g@guldbaek.net> wrote:

>> Du kan gøre fejlfindingen en del lettere ved at anvende variable:
>>
>> Dim strC9
>> strC9 = Request.Form("C9")
>>
>> Response.write "strC9: " & strC9 & "<br>"

>Det har jeg nu prøvet, og strC9 er tom, selv om der er sat hak i checkboxen
>C9.
>
>I adresselininen, hvor data returneres, står bl.a. dette:
>'FUType=&Emne=&arkivnavn=&C9=ON'
>Burde strC9 så ikke skrive 'ON'?

Nej, når du har dine værdier stående i adresselinien, er det fordi du
har brugt "get"-metoden. I så fald skal de hentes med:

strC9 = Request.QueryString("C9")

Hvis du i stedet bruger metoden "post", vil de ikke optræde i
adresselinien, og du henter dem med:

strC9 = Request.Form("C9")

Metoden finder du i:
<form ... method="get" ...>


Good luck,
Jørn

--
Jørn Andersen, Brønshøj
ALLE danske tropper HJEM fra Irak, NU
Skriv under: www.kirkmand-initiativet.dk
Demonstrér 17. marts: www.nejtilkrig.dk

Erling (09-03-2007)
Kommentar
Fra : Erling


Dato : 09-03-07 13:24


"Kurt G" skrev

>> Du kan gøre fejlfindingen en del lettere ved at anvende variable:
>>
>> Dim strC9
>> strC9 = Request.Form("C9")
>>
>> Response.write "strC9: " & strC9 & "<br>"
>> --
>> Jens Gyldenkærne Clausen

Følg Jens' råd. Det betaler sig.

> Det har jeg nu prøvet, og strC9 er tom, selv om der er sat hak i
> checkboxen C9.

OK. Dine værdier bliver altså ikke transporteret som du tror.

> I adresselininen, hvor data returneres, står bl.a. dette:
> 'FUType=&Emne=&arkivnavn=&C9=ON'
> Burde strC9 så ikke skrive 'ON'?

Kunne godt tyde på der er lidt rod i måden du poster og fanger data på.
Måske din definition af formen? Den skal indeholde 3 ting. Name, action og
method
F.eks.
<form name="Formnavn" action="side2.asp" method="post">
Derefter definerer du dine input felter
F.eks
<input type="checkbox" name="C9">

På side2.asp vil du så kunne fange C9 med
Dim strC9
strC9 = Request.Form("C9")

Hvis C9 er ckecked, vil værdien af C9 normalt være "on", men tjek det lige
med Jens' metode.

/Erling



Kurt G (09-03-2007)
Kommentar
Fra : Kurt G


Dato : 09-03-07 17:23

Det var .Form, der skulle skiftes ud til QueryString.

Tak for hjælpen.

Mvh Kurt



Jørn Andersen (09-03-2007)
Kommentar
Fra : Jørn Andersen


Dato : 09-03-07 17:49

On Fri, 9 Mar 2007 17:22:55 +0100, "Kurt G" <kurt_g@guldbaek.net> wrote:

>Det var .Form, der skulle skiftes ud til QueryString.

Vær opmærksom på, at det er meget lettere for brugere at "misbruge"; når
de er direkte tilgængelige i adresselinien. Hvis det ikke er noget
problem, så OK. (Nogle gange kan det være en fordel.)

Hvis du vil skjule det lidt mere, så brug "post"-metoden og
Request.Form.

>Tak for hjælpen.

Velbekomme.

Mvh. Jørn

--
Jørn Andersen, Brønshøj
ALLE danske tropper HJEM fra Irak, NU
Skriv under: www.kirkmand-initiativet.dk
Demonstrér 17. marts: www.nejtilkrig.dk

Erling (10-03-2007)
Kommentar
Fra : Erling


Dato : 10-03-07 09:53


"Kurt G" <kurt_g@guldbaek.net> skrev i en meddelelse
news:45f189f0$0$90269$14726298@news.sunsite.dk...
> Det var .Form, der skulle skiftes ud til QueryString.

Jeg er helt enig med Jørn som skriver at det er bedre at bruge .Form pga.
mulig misbrug. Herudover mener jeg at have læst et eller andet sted at
Get-metoden kun kan overføre 100 tegn.

Hvis du er ked af at skulle have de klodsede og kedelige Submit knapper på
din side, kunne du jo tage et kig på styles (CSS). Det er også muligt at
bruge et billede i stedet for.
F.eks.
<INPUT TYPE="image" SRC="submit.gif" ALT="Submit Form">

> Tak for hjælpen.

Velbekomme.

/Erling



Kurt G (09-03-2007)
Kommentar
Fra : Kurt G


Dato : 09-03-07 09:51

Klip.....
Det har jeg nu prøvet, og strC9 er tom, selv om der er sat hak i checkboxen
C9.

I adresselininen, hvor data returneres, står bl.a. dette:
'FUType=&Emne=&arkivnavn=&C9=ON'
Burde strC9 så ikke skrive 'ON'?
Klip.....

Jeg vil lige tilføje, at de andre parametre i adresselinien såsom 'FUType',
'Emne' og 'arkivnavn' overføres korrekt, når de ikke er tomme.

/Kurt




Jens Gyldenkærne Cla~ (10-03-2007)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 10-03-07 13:20

Erling skrev:

> Jeg er helt enig med Jørn som skriver at det er bedre at bruge
> .Form pga. mulig misbrug.

Ændring af en querystringvariabel kan være meget andet end misbrug.
I en søgning er det fx særdeles praktisk at bruge GET i stedet for
POST, fordi man kan linke direkte til en bestemt søgning.

Man skal afgjort være opmærksom på at værdien der transmitteres via
querystring let kan ændres - og gøre sig klart om det er et
problem. En anden tilgangsvinkel er at se på formålet med formen -
hvis det drejer sig om at *hente* informationer (søgning/opslag) er
GET normalt det logiske valg, mens POST-metoden er oplagt når man
primært skal sende ("poste") informationer.

> Herudover mener jeg at have læst et
> eller andet sted at Get-metoden kun kan overføre 100 tegn.

Der er ikke nogen officiel begrænsning, men både browsere og
servere har grænser der spiller ind på brugen af querystring. Så
vidt jeg husker er det browseren IE's grænse man først støder på -
den ligger på ca. 4000 tegn (i hele url'en)

[tjekke, tjekke]

Jeg huskede galt mht. maxlængden i IE - den er 2083. Det er
gevaldigt meget mindre end Firefox, Opera og Safari - alle testet
med mere end 80.000 tegn i en url (Opera testet helt op til
190.000) uden at støde på en maksgrænse.

Se tal mm. her: <http://www.boutell.com/newfaq/misc/urllength.html>


> Hvis du er ked af at skulle have de klodsede og kedelige
> Submit knapper på din side, kunne du jo tage et kig på styles
> (CSS). Det er også muligt at bruge et billede i stedet for.
> F.eks.
> <INPUT TYPE="image" SRC="submit.gif" ALT="Submit Form">

Man skal dog være opmærksom på at en input[type=image] fungerer
anderledes end input[type=submit] - den giver x- og y-koordinaterne
med når der submittes.

En stylet (almindelig) submitknap eller evt. en button er i mine
øjne et bedre valg.

Man kan se de forskellige muligheder her:
<http://gyros.dk/usenet/html/knap_billede.shtml>
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

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

Månedens bedste
Årets bedste
Sidste års bedste