Solved

How to pass parameters between pages/forms in HTML?

Posted on 2009-07-02
12
767 Views
Last Modified: 2012-05-07
Hello,

I am new to HTML.
I have a page, on this page I have a form with button. when I click the button another form opens (from another page). I need to pass a parameter to this form when it opens. Is it possible?
If yes, how to do it?

THANKS
Margarit
0
Comment
Question by:margarit
  • 4
  • 3
  • 2
  • +2
12 Comments
 
LVL 19

Expert Comment

by:erikTsomik
Comment Utility
yes you can pass the parameters by using as cgi variables, form variables and so on
 
take a look at this post
http://www.webdeveloper.com/forum/archive/index.php/t-2533.html
0
 
LVL 19

Expert Comment

by:erikTsomik
Comment Utility
0
 
LVL 25

Expert Comment

by:Shaun Kline
Comment Utility
There are a number of ways. One would be to have a hidden field (input type="hidden") and put your parameter into this field. A second way would be to alter the action property of the form tag to include the parameter as part of the query string (<page>?<parameter key word>=<parameter value>.

If you need to determine what that parameter value should be based on what the user entered, then you are looking at using javascript to handle setting the hidden field value/changing the action property.
0
 
LVL 9

Accepted Solution

by:
xBellox earned 500 total points
Comment Utility
Yours source form has to use "GET" method

<form name='yourSrcForm' method='get' action='dest.html'>
<input type='text' name='testSrc' value='Hello'>
</form>

So, in your destiny html you have to use some javascript to read the params passed and set the params to your new form. Something like this:

<html>

<body>
 

<form name='yourFinalForm'>

<input type='text' name='testDest'>

</form>
 
 

<script language='javascript'>
 

// Getting all params passed and storing in qsParm array

var qsParm = new Array();

var query = window.location.search.substring(1);

var parms = query.split('&');

for (var i=0; i<parms.length; i++) {

   var pos = parms[i].indexOf('=');

   if (pos > 0) {

       var key = parms[i].substring(0,pos);

       var val = parms[i].substring(pos+1);

       qsParm[key] = val;

    }

}
 

// Set the value to new form

document.yourFinalForm.testDest.value = qsParm['testSrc'];
 

</script>

</body>

</html>

Open in new window

0
 
LVL 1

Expert Comment

by:SimpleJ
Comment Utility
to make this simple do the following:

<form name="input" action="second_page.html" method="get">
Username:
<input type="text" name="user" />
<input type="submit" value="Submit" />
</form>

so the second_page will open in browser as:
 http://<some_host>/second_page.html?user=WhateverYouTyped

so there you go, you have passed a parameter value to next page.

However, the easiest way to get this parameter to page content is for example with php:
1. rename second_page.html to second_page.php
2. in second_page.php file type: <?php echo "I typed:" . $_request['user']; ?>

You can ofcourse use other methods (with aspx, jsp, js,....)

If you`re new to html then I suppose you haven`t tried any server side lang. either.
Just to get you started:
- install wamp server : http://www.wampserver.com/en/
- rename all *.html files to *.php
- copy *.php files to wamp www destination
- in browser type http://localhost/first_file.html

0
 
LVL 1

Expert Comment

by:SimpleJ
Comment Utility
correction:
in browser type http://localhost/first_file.php
0
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

 
LVL 9

Expert Comment

by:xBellox
Comment Utility
@SimpleJ:

  It isn't php language, it's pure HTML. Just renaming files may not work if the server was not correctly configured.
0
 

Author Comment

by:margarit
Comment Utility
Hello,
Thanks for so many helpful comments.
I am already using Java script.
My page2 should get a parameter from page1 but later it should pass back to page1 a list of parameters. So what action should I set : "set" or "get"?
How to implement it?
THANKS
0
 
LVL 9

Expert Comment

by:xBellox
Comment Utility
The method to pass parameters from one simple HTML doc to another is always GET.

The "action" is the file that will receive the parameters.

So the page1.html, must has the form like this:

<form name='frm1'  action='page2.html' method='get'>


And page2 like this:

<form name='frm2'  action='page1.html' method='get'>
0
 

Author Comment

by:margarit
Comment Utility
THANKS!
I will try it now
0
 

Author Comment

by:margarit
Comment Utility
Hello,
I tried the xBellox solution, but the problem that in my DestPage I get nothing. If I print "query"  it is empty. Why?
0
 

Author Closing Comment

by:margarit
Comment Utility
Hi, At first I had a problem but then I defined a button as "submit " and it works.
0

Featured Post

Threat Intelligence Starter Resources

Integrating threat intelligence can be challenging, and not all companies are ready. These resources can help you build awareness and prepare for defense.

Join & Write a Comment

Suggested Solutions

Building a website can seem like a daunting task to the uninitiated but it really only requires knowledge of two basic languages: HTML and CSS.
This article discusses four methods for overlaying images in a container on a web page
The viewer will receive an overview of the basics of CSS showing inline styles. In the head tags set up your style tags: (CODE) Reference the nav tag and set your properties.: (CODE) Set the reference for the UL element and styles for it to ensu…
HTML5 has deprecated a few of the older ways of showing media as well as offering up a new way to create games and animations. Audio, video, and canvas are just a few of the adjustments made between XHTML and HTML5. As we learned in our last micr…

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!

Get 1:1 Help Now