Avatar billede webhelpers Praktikant
21. juli 2005 - 23:47 Der er 18 kommentarer og
1 løsning

Hente data fra html form

Jeg poster nogle hidden data fra en html form til en .net side, som skal hente disse variable og smide dem i en database.

Hvordan gør man lige det i c#? :-)

Jeg kan af sikkerhedsmæssige årsager ikke parse dataene i querystrings.
Avatar billede softspot Forsker
22. juli 2005 - 00:13 #1
Du henter en form-værdi på følgende måde:

Request.Form[navnet på dit skjulte felt];

f.eks.

Request.Form["txtFornavn"];

Det er muligt at du skal konvertere til en bestemt type. Du kan f.eks. konvertere til en streng på denne måde:

Convert.ToString(Request.Form["txtFornavn"]);
Avatar billede webhelpers Praktikant
22. juli 2005 - 00:24 #2
Når jeg bruger følgende i receive.aspx

string Username = Convert.ToString(Request.Form["username"]);

Så modtager den en blank variabel, som om den ikke kan finde ud af at hente data fra HTML-formen....
Avatar billede webhelpers Praktikant
22. juli 2005 - 00:26 #3
Formularen som er på send.asp ser sådanne ud:

<form action="java script:NewWindow('forum/message_new.aspx','name','400','335','no','no')" method=post name=form>
    <input type=hidden name=username value=<%=username%>>
</form>
Avatar billede softspot Forsker
22. juli 2005 - 00:26 #4
Kan du prøve at vise HTML-koden til formularen?
Avatar billede softspot Forsker
22. juli 2005 - 00:27 #5
:) takker ;)

Hvad sker der i NewWindow-rutinen?
Avatar billede softspot Forsker
22. juli 2005 - 00:30 #6
Jeg gætter på at du første poster formularen til forum/message_new.aspx og derfra redirecter til receive.aspx...? Hvis det er tilfældet, så vil dine form-felter gå tabt, med mindre du skifter Response.Redirect ud med en Server.Transfer.
Avatar billede webhelpers Praktikant
22. juli 2005 - 00:32 #7
Ja, du har ret, der sker et eller andet der, for hvis jeg fjerner javascriptet, og bare bruger: action'forum/message_new.aspx'

Så modtager message_new.aspx fint variablen....PIS, hvordan grejer jeg så lige den? For det skal være et popup-vindue
Avatar billede softspot Forsker
22. juli 2005 - 00:47 #8
Hvis jeg skal kunne hjælpe dig lidt videre, er jeg nød til at se lidt mere kode eller vide lidt mere om hvad det er du har tænkt dig der skal ske...
Avatar billede webhelpers Praktikant
22. juli 2005 - 01:01 #9
Jeg skal sådan set bare poste form data fra en asp side til en .aspx side, men som du påpeger, så virker det ikke rigtigt når url'en i Form'en er et javascript, som åbner siden som skal modtage data, i et popupvindue...så er det som om data'ene ikke postes.

For det virker jo fint, hvis url'en i formen ikke eksekveres via et javascript popup, men bare poster til url'en (receive.aspx) direkte.

Men data'ene som skal postes via form fra send.asp SKAL kalde receive.aspx i et popup-vindue
Avatar billede webhelpers Praktikant
22. juli 2005 - 01:02 #10
Så spørgsmålet er nu, hvordan jeg lige kommer uden om den hurdle...
Avatar billede softspot Forsker
22. juli 2005 - 01:07 #11
Er der ikke noget med at man kan sætte target="_blank" på form-elementet, så din action åbner i et nyt vindue... prøv lige det.
Avatar billede webhelpers Praktikant
22. juli 2005 - 01:09 #12
Jo, det kunne jeg måske gøre. Popup-vinduet skal dog være en bestemt størrelse og med specifikke window-egenskaber såsom at det ikke skal kunne resize osv..men det kan man måske gøre med en body onload...det prøver jeg lige
Avatar billede softspot Forsker
22. juli 2005 - 01:11 #13
Alternativt kunne du måske åbne popupvinduet først (ved at reagere på onsubmit-eventet på form-tag'et - og vente til det er loaded færdig) og sætte target="navnet_på_dit_popup"...
Avatar billede webhelpers Praktikant
22. juli 2005 - 01:16 #14
Heh, det tror jeg ikke kan lade sig gøre, da egenskaber for et nyt vindue skal sættes INDEN det bliver initieret, og derfor kun kan gøres fra siden som åbner vinduet: java script:newwindow('receive.asp',400, bla bla)...

Hm, har du en god idé til hvordan jeg så kan sende følsomme data videre til popup-vindue uden at folk får en god idé til at manipulere med url'en? for hvis jeg poster en querystring som userid=100, så kan klienten jo bare sætte et andet id ind i querystringen...
Avatar billede webhelpers Praktikant
22. juli 2005 - 01:17 #15
God idé, jeg prøver lige :-)
Avatar billede webhelpers Praktikant
22. juli 2005 - 01:25 #16
Haha, du er jo genial min ven ;-)

<form onsubmit=java script:NewWindow('','name','400','335','no','no') action=forum/message_new.aspx target=name method=post name=form>

Det virker
Avatar billede webhelpers Praktikant
22. juli 2005 - 01:25 #17
Poster du lige et svar så du kan få point?
Avatar billede softspot Forsker
22. juli 2005 - 01:30 #18
Jeg er glad for at du fandt frem til en brugbar løsning (og at jeg kunne inspirere dig :))...
Avatar billede webhelpers Praktikant
22. juli 2005 - 01:34 #19
Det er mig der takker :-)
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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