Toon posts:

[ASP] Handmatig dingen aan querystring toevoegen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hoi Tweakers,

Is het mogelijk om op een makkelijke manier zelf een POST querystring te addediten zeg maar?

ik weet dat je via een form dingen in de querystring kan zetten, probleem is ik wil iets meesturen wat niet voor een form eigenlijk bedoeld is. Ik heb al Form item hidden geprobeerd alleen deze Ver*piep*t
de opmaak van mijn formulier.

het idee ( dit is dus geen correcte syntax ) is dit:

Querystring = Querystring +"?=med_nr=73"

Wie kan me helpen.

PS ik heb hier op gegoogled, maar de enige oplossing die ik vond vond ik veel te complex en de code kon ik nauwelijk begrijpen. Een makkelijke oplossing voor beginnende/iets gevorderde ASP programmeurs dus gewenst.Bij voorbaat dank _/-\o_

  • mark117
  • Registratie: Oktober 2002
  • Laatst online: 16-01 14:28
Bij het linkje waar de gebruiker op klikt kan je gewoon dingen bijplaatsen in de URL:

<a href="link.asp?med_nr=73">Klik</a>

ps. ik denk dat je VBscript gebruikt, en dan werkt de "+" niet om 2 strings aan elkaar te plakken, daarvoor is de "&"

[ Voor 13% gewijzigd door mark117 op 16-03-2006 10:25 ]


  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 20-02 03:31

Gerco

Professional Newbie

De geeikte manier om zoiets te doen lijkt me toch echt een hidden form variable. Die zou je opmaak niet moeten slopen, hij is immers hidden.

Je zou ook de action= attribute van het form kunnen gebruiken:
HTML:
1
<form action="pagina.asp?med_nr=73">


Dan is je variabele ook beschikbaar, maar dan als GET var (Request.QueryString) en niet als POST var (Request.Form).

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


Verwijderd

Topicstarter
Reactie op Mark 117,

Ja dat snap ik maar kan ik ook in die href zeg maar een constructie doen van string is string + de handmatige toevoeging??( er staan namelijk meer als 60 items die wel via een formulier gewoon ingevuld worden beetje omslachtig en veel werk als ik die allemaal in die href moet zetten )

Reactie op Gerco,

hij sloopt mijn opmaak dus wel, hij is idd hidden, maar hij is er wel en neemt dus ook plaats in.( dus heel logisch dat die opmaak sloopt)

Is het mischien idee om de hidden dingen dan buiten de tabel te plaatsten of krijg ik dan weer een scrollbar( omdat de hidden items de pagina onzichtbaar langer maken ) waar de gebruiker van denkt waarom is die daar????

[ Voor 39% gewijzigd door Verwijderd op 16-03-2006 10:32 ]


  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Of eerst bepalen welke seperator je moet gebruiken.
code:
1
2
3
4
5
6
7
seperator;
if( querystring.Contains( "?" ) )
    seperator = "&";
else
    seperator = "?";

querystring = querystring + seperator + "MyVar=" + UrlEncode( MyValue );

Maar het ligt er natuurlijk nogal een beetje aan waar je dat wilt doen en waarvoor of dat een handige methode is

Wat ik met trouwens afvraag is waarom een hidden field de opmaak van je formulier verneukt?. Een hidden field renderd namenlijk helemaal niets.

[ Voor 23% gewijzigd door Woy op 16-03-2006 10:31 ]

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


  • mark117
  • Registratie: Oktober 2002
  • Laatst online: 16-01 14:28
Dan is de beste oplossing die van Gerco

(en dan wel de oplossing met een hidden form element)

Verwijderd

Topicstarter
ik zal eens wat proberen wat jullie aangedragen hebben als het lukt zal ik netjes feedback hierover geven.

  • giMoz
  • Registratie: Augustus 2002
  • Laatst online: 21-01 09:10

giMoz

iets met meester...

in input type hidden hoort geen plaats in te nemen, nog geen pixel..

Of niet natuurlijk...


  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 20-02 03:31

Gerco

Professional Newbie

Plaats je je hidden element soms in een extra row in een tabel? IE heeft nog wel eens de neiging om dan een paar pixels te renderen voor de table row waar niets instaat. Of dat correct is weet ik niet, maar die hele table row moet je dan natuurlijk niet gebruiken.

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


Verwijderd

Topicstarter
ik zal een stukje code prijsgeven:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<table border="1" width="502" height="279">
    <tr>
      <td width="54" height="19">Pers.nr</td>
      <td width="184" colspan="2" height="19">Naam</td>
      <td width="116" height="19">Voorletter</td>
      <td width="118" colspan="2" height="19">Tussenvoegsel</td>
    </tr>
    <tr>
      <td width="54" height="23"><input TYPE="TEXT" NAME="Med_nrhoofd" SIZE="11" VALUE="<%=OBJRS.FIELDS("Med_nr")%>"></td>
      <input Type="hidden" Name="hMed_nrhoofd" VALUE="<%=OBJRS.FIELDS("Med_nr")%>"
 <td width="184" colspan="2" height="23"><input TYPE="TEXT" NAME="Med_naam" SIZE="24" VALUE="<%=OBJRS.FIELDS("Med_naam")%>"></td>
      <input Type="hidden" Name="hMed_naam" VALUE="<%=OBJRS.FIELDS("Med_naam")%>"
      <td width="116" height="23"><input TYPE="TEXT" NAME="Med_voor" SIZE="10" VALUE="<%=OBJRS.FIELDS("Med_voor")%>"></td>
      <input Type="hidden" Name="hMed_voor" VALUE="<%=OBJRS.FIELDS("Med_voor")%>"
      <td width="59" height="23"><input TYPE="TEXT" NAME="Med_tus1" SIZE="8" VALUE="<%=OBJRS.FIELDS("Med_tus1")%>"></td>


Deze code zorgt in ieder geval dat mijn formulier rare eigenschappen gaat vertonen ( voor de hidden inputs was dat nie en had het formulier de juiste opmaak )

[ Voor 35% gewijzigd door Verwijderd op 16-03-2006 11:04 ]


  • TeeDee
  • Registratie: Februari 2001
  • Nu online

TeeDee

CQB 241

Define 'rare eigenschappen'. Werkt het niet, of gooit het je layout door de war?
Als het dat laatste is, zou je bijv. met CSS het e.e.a. kunnen gaan proberen. Of gooi je hidden fields buiten je table.

Maar waarom zet je de waarde van Med_Naam nog een keer in een hidden field?
Verwijderd schreef op donderdag 16 maart 2006 @ 11:10:
Kijk deze pagina zorgt ervoor dat medewerkers hun NAW + allerlei andere info ( smoelenboek ) kunnen wijzigen, wanneer er velden zijn gewijzigd krijgt de medewerker een overzichtje van welke waardes gewijzigd zijn + de oude situatie.

In de code word de nieuwe situatie gewoon als form value meegestuurd ( user input ) en wil ik dus de oude waarde ook meesturen ( via dat hidden veld )
Ah, duidelijk :).
Om van het hele gezeik af te zijn, zou je de originele waarde in een session(array met waardes) kunnen stoppen.

[ Voor 73% gewijzigd door TeeDee op 16-03-2006 11:13 ]

Heart..pumps blood.Has nothing to do with emotion! Bored


Verwijderd

Topicstarter
Kijk deze pagina zorgt ervoor dat medewerkers hun NAW + allerlei andere info ( smoelenboek ) kunnen wijzigen, wanneer er velden zijn gewijzigd krijgt de medewerker een overzichtje van welke waardes gewijzigd zijn + de oude situatie.

In de code word de nieuwe situatie gewoon als form value meegestuurd ( user input ) en wil ik dus de oude waarde ook meesturen ( via dat hidden veld )

Verwijderd

Topicstarter
[b][message=25391146,noline]TeeDee schreef op donderdag 16 maart 2006 @ 11:05

Ah, duidelijk :).
Om van het hele gezeik af te zijn, zou je de originele waarde in een session(array met waardes) kunnen stoppen.
Ik ga dat laatste even proberen ( even array kennis in VBScript weer opfrissen ), maar dat van die hidden buiten de table zetten ga ik zeker ook proberen ( is sneller klaar :) ) alvast bedankt

Vraagje: wat is per performance sneller meesturen of array?

en vraag 2: session dat betekend dus dat ik met cookies moet gaan werken klopt he?

  • TeeDee
  • Registratie: Februari 2001
  • Nu online

TeeDee

CQB 241

Verwijderd schreef op donderdag 16 maart 2006 @ 11:19:
[...]
Vraagje: wat is per performance sneller meesturen of array?
Dat zal verwaasloosbaar zijn.
en vraag 2: session dat betekend dus dat ik met cookies moet gaan werken klopt he?
Er zal meestal 1 'tijdelijke' cookie bij de client komen. Die met het sessie-id erin. De rest wordt op de server afgehandeld. Ik heb het persoonlijk nog niet meegemaakt dat dit problemen op client-niveau oplevert. Of de security settings moeten zo achterlijk staan. :)

Sessie informatie: http://www.w3schools.com/asp/asp_sessions.asp

Heart..pumps blood.Has nothing to do with emotion! Bored


  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 20-02 03:31

Gerco

Professional Newbie

Je hidden form vars staan in een <tr>, maar buiten een <td>. Dat mag niet van de HTML specs vziw. Probeer die hiddens eens buiten de <table> of binnen een <td> te plaatsen (die ervoor ofzo).

IE wil nog weleens whitespace tussen <td> en <tr> en <tr> en <tr> renderen (wat hij dus eigenlijk niet mag doen). Om tabellen in IE helemaal kloppend te maken is het (bij mij) wel eens nodig geweest om de whitespace tussen de tag eindes en de volgende tag helemaal weg te halen.

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


Verwijderd

Topicstarter
Aan Teedee en de anderen:

Dat buiten de table zetten met die hidden velden WERKT PERFECT!!!!

Geen opmaak problemen meer, maar betkend dus wel dat wanneer je het binnen een table zet IE in ieder geval het raar gaat interpreteren :? Zou Firefox dat nu ook doen?

Aan Gerco
Ik denk dat je de spijker op de kop slaat zal daar wel aan gelegen hebben

[ Voor 15% gewijzigd door Verwijderd op 16-03-2006 11:45 ]


  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 20-02 03:31

Gerco

Professional Newbie

Verwijderd schreef op donderdag 16 maart 2006 @ 11:44:
Geen opmaak problemen meer, maar betkend dus wel dat wanneer je het binnen een table zet IE in ieder geval het raar gaat interpreteren :? Zou Firefox dat nu ook doen?
Ik zou zeggen: "Probeer het eens".

Het is zowiezo een goed idee om een website te testen in meerdere browsers. Alleen testen in IE is echt niet meer van deze tijd. Je moet toch wel minimaal IE, Firefox en Opera geprobeerd hebben. Indien enigszins mogelijk ook Safari, maar ik kan me voorstellen dat je geen Mac bij de hand hebt.

Is er een KHTML-based browser voor Windows eigenlijk? Dan zou je die kunnen gebruiken ipv Safari.

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!

Pagina: 1