$Web Form Action: Difference between revisions
m (1 revision) |
m (1 revision) |
(No difference)
|
Revision as of 20:54, 6 June 2012
{{DISPLAYTITLE:$Web_Form_Action.} <section begin="desc" />Return action URL<section end="desc" />
$Web_Form_Action./var> returns the relative URL of the current request.
Syntax
<section begin="syntax" /> %RC = $Web_Form_Action.pos, len) <section end="syntax" />
$Web_Form_Action./var> takes two arguments and returns a string.
The first parameter is the starting position in the URL for the current request to be returned. This is an optional parameter, and it defaults to one, meaning that the current URL is returned starting at the first character.
The second parameter is the maximum number of characters to be returned. This is an optional parameter and defaults to 255.
$WEB_FORM_ACTION, as the name might suggest, is most useful in generating the URL for the "action" attribute of the <form> tag in HTML. This is especially useful if the current URL includes ISINDEX data that might be relatively difficult to reconstruct otherwise. The following demonstrates how one might use the $Web_Form_Action./var> function in a form generated with the HTML statement.
HTML
<form method="POST" action="{$Web_Form_Action.">
Name:
<input size=20 type="text" name="name" value="{%NAME}">
Rank:
<input size=12 type="text" name="rank" value="{%RANK}">
Serial number:
<input size=12 type="text" name="serno" value="{%SERNO}">
<input type="submit" value="Update">
</form>
END HTML
If there is a possibility that the current relative URL along with the ISINDEX data is longer than 255 bytes, $Web_Form_Action./var> should be used in a loop in conjunction with $Web_Form_Action.Len as demonstrated here:
PRINT '<form method="POST" action="' ... FOR %I FROM 1 TO $Web_Form_Action.Len BY 255 PRINT $Web_Form_Action.%I) ... END FOR PRINT '">'
The $Web_Form_Action./var> function is available with Version 6.0 and later of Sirius Mods.
See also [[$Web_Form_Action.Len]] and $Web_Form_Done.
[[Category:Janus Web Server $functions|$Web_Form_Action.]