[Webinar] Streamline your web hosting managementRegister Today

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 225
  • Last Modified:

passing variables

I'm using a form which contains a link. (<a href></a>)
When a user clicks on this link, I want to pass some form values to my perl file. Now I want to read this parameters out in perl with :

$qn1=$q->param(qn1);
$qn2=$q->param(qn2);

and not with:
$ARGV[0] =~ s/\W//g;
$ARGV[1] =~ s/\W//g;
$qn1=$ARGV[0];
$qn2=$ARGV[1];

How to do this ?

Ps. I want to have a link <a href></a>, not a submit button.
0
michael123199
Asked:
michael123199
1 Solution
 
christopher sagayamCommented:
0
 
michael123199Author Commented:
I want to read it out with:
$qn1=$q->param(qn1);
$qn2=$q->param(qn2);

not with:
$ARGV[0] =~ s/\W//g;
$ARGV[1] =~ s/\W//g;
$qn1=$ARGV[0];
$qn2=$ARGV[1];
0
 
christopher sagayamCommented:
you can read it out like that using my method
0
[Webinar] Kill tickets & tabs using PowerShell

Are you tired of cycling through the same browser tabs everyday to close the same repetitive tickets? In this webinar JumpCloud will show how you can leverage RESTful APIs to build your own PowerShell modules to kill tickets & tabs using the PowerShell command Invoke-RestMethod.

 
christopher sagayamCommented:
you want to read variables passed to your cgi script isnt it ?
0
 
bebonhamCommented:
chris18 is 100% correct.

the only drawback to that method is it only submits the link and not other form data...

I mention this only because otherwise you should have already accepted his answer.



if you want the link data to submit WITH a form, put hidden fields in the form and use this cute little script.


here is an example.

as long as you make enough hidden fields for your values, this will work.

more, it is kindof neat.
it changes the names and the values of the fields, so it should work flawlessly in any browser.

although, chris18 really answered your question, try this anyways...right now the text fields are type text, not type hidden, so you can see it work. and the submit part is also commented out...so if you want to send it to your cgi you'll need to change that.

<HTML>
  <HEAD>
      <TITLE></TITLE> <SCRIPT>
function sendQS(an)
{
base="hiddenField"
put=an.href.substr(an.href.lastIndexOf('/')+1)
tArr=new Array()
tArr=put.split('&')
values=new Array()
keys=new Array()
j=0
for(i in tArr)
{
keys[j]=tArr[i].split('=')[0]
values[j++]=tArr[i].split('=')[1]
}
for(v in values)
{
eval("document.forms['formName'].elements['" + base + v + "'].name=keys[v]")
eval("document.forms['formName'].elements['" + base + v + "'].value=values[v]")
}
//document.forms['formName'].submit()
}


</SCRIPT>
  </HEAD>
  <BODY>
      <P><A HREF="key1=value1&key2=value2&key3=value3"
          ONCLICK="sendQS(this);return false">click to send</A> </P>
      <FORM NAME="formName" METHOD="POST" ACTION="http://www.yoursite.com">
          <INPUT TYPE="TEXT" NAME="hiddenField0">
          <INPUT TYPE="TEXT" NAME="hiddenField1">
          <INPUT TYPE="TEXT" NAME="hiddenField2">
<INPUT TYPE="TEXT" NAME="hiddenField3">
<INPUT TYPE="TEXT" NAME="hiddenField4">
<INPUT TYPE="TEXT" NAME="hiddenField5">
         
           </FORM> </BODY>
</HTML>
0
 
ahoffmannCommented:
how about simply using in your page:

   <INPUT TYPE=hidden NAME=qn1 VALUE=whatever>
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now