Jump to content

Sending form variable as URL parameter


petenaylor

Recommended Posts

Hi all

 

I am in the process of creating a product page where the user can type in three initials into a form and then 'clicks add to basket'.

 

The button doesn't use a form just a url:

 

basket.php?action=add&id=1&qty=1

 

This adds the item into a basket using sessions rather than a database. The question is, how do I add three variables into my form so that they are sent via the URL and into the session?

 

Wil I have to start again with a form?

 

Here's the code:

 

<td class="table-font-grey">Why not make your whip extra special by adding up to three elegantly engraved Kunstler script initials.</td>

            <td width="42" style="border: 1px solid grey;"><input name="initial_1" type="text" size="8" maxlength="1" height="40px" /></td>

            <td width="43" style="border: 1px solid grey;"><input name="initial_2" type="text" size="8" maxlength="1" height="40px" /></td>

            <td width="43" style="border: 1px solid grey;"><input name="initial_3" type="text" size="8" maxlength="1" height="40px" /></td>

          </tr>

          <tr>

            <td height="15"> </td>

            <td width="328" class="table-font"> </td>

            <td width="42" align="center" class="table-font">1</td>

            <td width="43" align="center" class="table-font">2</td>

            <td align="center" class="table-font">3</td>

            </tr>

          <tr>

            <td> </td>

            <td colspan="3" class="table-font"> </td>

            <td align="right" class="table-font"> </td>

          </tr>

        </table>

        <hr />

        <p> </p>

        <table width="494" border="0">

          <tr class="table-font">

            <td width="263" height="24">

           

            <a href="<?php echo "basket.php?action=add&id=1&qty=1" ?>" title="Add <?php echo $product['name'] ?> to Cart">

            <a href="<?php echo WEB_URL."basket.php?action=add&id=1&qty=1" ?>" title="Add <?php echo $product['name'] ?> to Cart">

            <img src="<?php echo WEB_URL."images/product-add-button.gif" ?>" alt="Buy <?php echo $product['name'] ?>" /></a>

           

Many thanks

Pete

Link to comment
Share on other sites

It is true that you can specify GET for a FORM action which sends the form fields through the url instead of as POST data. However, I don't see a FORM in your code. It looks like you are trying to submit the form data using a link (<A href="...">).  This cannot be done. (well, unless you use javascript). You have to use a submit element to send the form fields either through GET or POST.

 

<FORM method="POST" action="<?php echo "basket.php?action=add&id=1&qty=1" ?>">
<!-- Your table here -->
<INPUT type="submit" name="btnAdd" value="Add to Basket">

 

Note: This example sends the existing paramaters (action, id, and qty) in $_GET and sends the initials (initial_1, initial_2, and initial_3) as $_POST parameters.  I just did it that way, because it is cool that you can.  You should probably use GET for the form method instead of POST in this particular case, just so you don't get too confused about what's where. 

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.