/ 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
Kan man forhindre Refresh af en ASP side ?
Fra : Peter C.


Dato : 21-09-01 12:08

Hejsa

Jeg har en asp side som modtager bruger-input fra en anden asp
side. Modtager-siden displayer brugerens input og indsætter det i
en database - og det virker OK.

Problemet er, at hvis brugeren klikker på Refresh, så indsættes
input'et lige så mange gange, der klikkes Refresh

Det er jo ikke optimalt.

Er der er "god-praksis" løsning på dette problem ?

Jeg vil samtidig gerne forhindre brugeren i at klikke Back i
browseren, for så kommer vedkommende tilbage til form-siden, som
stadig indeholder input'et - og brugeren kan derved klikke på Gem
endnu en gang og gemme input'et igen og igen.

Skal jeg validere input'et op imod databasens indhold hver gang
og forhindre dubletter ? (det lyder umiddelbart lidt tidskrævende
...)

På forhånd tak.

Mvh.

Peter

--
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

 
 
DR_CHAOS (21-09-2001)
Kommentar
Fra : DR_CHAOS


Dato : 21-09-01 12:14

er der noget af de indtastede værdier som er unikke ?
hvis ja så kan du jo definere at dubletter ikke er tilladt i
databasen.
derved forhindre du genindtastning.

bare et forslag :)


Peter C. wrote in dk.edb.internet.webdesign.serverside.asp:
> Hejsa
>
> Jeg har en asp side som modtager bruger-input fra en anden asp
> side. Modtager-siden displayer brugerens input og indsætter det i
> en database - og det virker OK.
>
> Problemet er, at hvis brugeren klikker på Refresh, så indsættes
> input'et lige så mange gange, der klikkes Refresh
>
> Det er jo ikke optimalt.
>
> Er der er "god-praksis" løsning på dette problem ?
>
> Jeg vil samtidig gerne forhindre brugeren i at klikke Back i
> browseren, for så kommer vedkommende tilbage til form-siden, som
> stadig indeholder input'et - og brugeren kan derved klikke på Gem
> endnu en gang og gemme input'et igen og igen.
>
> Skal jeg validere input'et op imod databasens indhold hver gang
> og forhindre dubletter ? (det lyder umiddelbart lidt tidskrævende
> ...)
>
> På forhånd tak.
>
> Mvh.
>
> Peter
>
> --
> 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


--
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

Janus Klok Lauritsen (21-09-2001)
Kommentar
Fra : Janus Klok Lauritsen


Dato : 21-09-01 14:16


"Peter C." <IngenRigtigAdresse@dk.dk> wrote in message
news:9of736$pt9$1@sunsite.dk...
> Hejsa
> Problemet er, at hvis brugeren klikker på Refresh, så indsættes
> input'et lige så mange gange, der klikkes Refresh
>
> Det er jo ikke optimalt.
>
> Er der er "god-praksis" løsning på dette problem ?
<snip>
> Peter
Du kunne jo indsætte det postede i sessions variabler, og så checke på om
disse har samme værdi som det postede...
Selvfølgelig først checke derefter indsætte i sessions....
Mvh
Janus



Klaus Egebjerg (21-09-2001)
Kommentar
Fra : Klaus Egebjerg


Dato : 21-09-01 19:11

dd
"Janus Klok Lauritsen" <janus@mcb.dk> wrote in message
news:3bab3df7$0$4790$ba624c82@nntp01.dk.telia.net...
>
> "Peter C." <IngenRigtigAdresse@dk.dk> wrote in message
> news:9of736$pt9$1@sunsite.dk...
> > Hejsa
> > Problemet er, at hvis brugeren klikker på Refresh, så indsættes
> > input'et lige så mange gange, der klikkes Refresh
> >
> > Det er jo ikke optimalt.
> >
> > Er der er "god-praksis" løsning på dette problem ?
> <snip>
> > Peter
> Du kunne jo indsætte det postede i sessions variabler, og så checke på om
> disse har samme værdi som det postede...
> Selvfølgelig først checke derefter indsætte i sessions....
> Mvh
> Janus
>
>



Klaus Egebjerg (21-09-2001)
Kommentar
Fra : Klaus Egebjerg


Dato : 21-09-01 19:13

Hej

Jeg har lavet en tabel der henter data fra en database. Det går også
udemærket hvis der er noget til alle felter. Men hvis der ikke er nogen
værdi i et af felterne, da opretter mit script ikke noget felt, og tabelen
ser helt forkert ud (det er ikke nogen firkant). Hvis jeg gør det sådan at
der kommer et . så virker det meget godt, men kan jeg ikke får et tomt felt.

jeg har forsøgt på følgende måde:

If rs("Link") <> " " then
Response.Write "<td><a href=""Produkt.asp?Side=Malt&id=" & rs(0) & """>"
Response.Write Server.HTMLEncode (rs(5)) & "</a></td>"
Else
Response.Write "<td>" & " "
End If

Er der nogen der kan hjælpe ?

Klaus Egebjerg






Claus O (21-09-2001)
Kommentar
Fra : Claus O


Dato : 21-09-01 21:08

"Klaus Egebjerg" <klausegebjerg@get2net.dk> wrote

> udemærket hvis der er noget til alle felter. Men hvis der ikke er nogen
> værdi i et af felterne, da opretter mit script ikke noget felt, og tabelen
> ser helt forkert ud (det er ikke nogen firkant). Hvis jeg gør det sådan at
> der kommer et . så virker det meget godt, men kan jeg ikke får et tomt felt.
>
Hvis du først laver en 'fast' <td> og derefter indsætter feltet med data hvis det
ikke er tomt, burde det se normalt ud.
Claus





Klaus Egebjerg (21-09-2001)
Kommentar
Fra : Klaus Egebjerg


Dato : 21-09-01 21:42

Claus O wrote in dk.edb.internet.webdesign.serverside.asp:
> "Klaus Egebjerg" <klausegebjerg@get2net.dk> wrote
>
> > udemærket hvis der er noget til alle felter. Men hvis der ikke er nogen
> > værdi i et af felterne, da opretter mit script ikke noget felt, og tabelen
> > ser helt forkert ud (det er ikke nogen firkant). Hvis jeg gør det sådan at
> > der kommer et . så virker det meget godt, men kan jeg ikke får et tomt felt.
> >
> Hvis du først laver en 'fast' <td> og derefter indsætter feltet med data hvis det
> ikke er tomt, burde det se normalt ud.
> Claus
>
Øhhh. Hvordan laver jeg en fast <td> ?

Klaus


--
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

Frank Normann (22-09-2001)
Kommentar
Fra : Frank Normann


Dato : 22-09-01 15:04

skal din else sætning ikke se sådan ud:
Response.Write "<td>" & "</td>"
End If

If rs("Link") <> " " then
Response.Write "<td><a href=""Produkt.asp?Side=Malt&id=" & rs(0) & """>"
Response.Write Server.HTMLEncode (rs(5)) & "</a></td>"
Else
Response.Write "<td>" & " "
End If


> >
> > > udemærket hvis der er noget til alle felter. Men hvis der ikke er
nogen
> > > værdi i et af felterne, da opretter mit script ikke noget felt, og
tabelen
> > > ser helt forkert ud (det er ikke nogen firkant). Hvis jeg gør det
sådan at
> > > der kommer et . så virker det meget godt, men kan jeg ikke får et tomt
felt.
> > >
> > Hvis du først laver en 'fast' <td> og derefter indsætter feltet med data
hvis det
> > ikke er tomt, burde det se normalt ud.
> > Claus
> >
> Øhhh. Hvordan laver jeg en fast <td> ?
>
> Klaus
>
>
> --
> 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



Claus O (23-09-2001)
Kommentar
Fra : Claus O


Dato : 23-09-01 15:30

"Klaus Egebjerg" <klausegebjerg@get2net.dk> wrote

> Øhhh. Hvordan laver jeg en fast <td> ?

Hvis jeg da ellers ikke har misforstået det hele, så indsætter
jeg en <td> (som så ikke er afhængig af asp) før asp (som
så altid vil være der) og derefter checker om der skal indsættes
noget, her naturligvis uden <td>.
Claus
ps: husk at proppe noget i <td> hvis der skulle komme en
NN4 bruger forbi. Eks. &nbsp; eller bedst en 1x1 transp.gif (ellers
vil det stadig ikke være kønt i NN4).





Thygesen (22-09-2001)
Kommentar
Fra : Thygesen


Dato : 22-09-01 09:12

> Jeg har en asp side som modtager bruger-input fra en anden asp
> side. Modtager-siden displayer brugerens input og indsætter det i
> en database - og det virker OK.
>
> Problemet er, at hvis brugeren klikker på Refresh, så indsættes
> input'et lige så mange gange, der klikkes Refresh
>
> Det er jo ikke optimalt.
>
> Er der er "god-praksis" løsning på dette problem ?
>
> Jeg vil samtidig gerne forhindre brugeren i at klikke Back i
> browseren, for så kommer vedkommende tilbage til form-siden, som
> stadig indeholder input'et - og brugeren kan derved klikke på Gem
> endnu en gang og gemme input'et igen og igen.
>

For at undgå at folk bare kan trykke refresh og derved få indsat de samme
data kan du bare lave en:
response.redirect "default.asp"
efter at du har gemt i databasen

og når det gælder det andet problem med at folk kan trykke tilbage og Gem
igen, så kan du lave en session, hvor du gemmer det der sidst er blevet
indtastet og inden du gemmer i databasen skal du så lige tjekke om personen
prøver at gemme de samme data igen (altså om session("navn") =
request.form("navn") ), det vil dog ikke virke hos folk som har slået
cookies fra som ikke gemme på computeren. For at undgå det problem kan du
bare gemme det sidst indtastede i en application i stedet for.

Mvh. Christoffer Thygesen

e-mail: cht@cht.dk
homepage: http://cht.dk



Janus Klok Lauritsen (22-09-2001)
Kommentar
Fra : Janus Klok Lauritsen


Dato : 22-09-01 15:34

<snip>
> det vil dog ikke virke hos folk som har slået
> cookies fra som ikke gemme på computeren. For at undgå det problem kan du
> bare gemme det sidst indtastede i en application i stedet for.
>
> Mvh. Christoffer Thygesen
Bare en lille tilægger:
Det med application virker så kun hvis der ikke er flere der indtaster på
samme tid, men ellers kunne man jo bare sætte den begrænsning at folk skulle
modtage cookies, og så lave et javascript som checker for dette.
Mvh
Janus



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

Månedens bedste
Årets bedste
Sidste års bedste