Well, I use a URL like:
http://www.MyWebsite.com/HL/LL/LO/index.cfm/IN.526/CD.3142036/CN.53306261/HD.1000/AL.A/OR.50897.HTM
which separates Variables name/value with a "."
The my app_globals.cfm (or application.cfm) contains the following to parse
the URL:
<!--- Strip ".htm/.html" from the URL --->
<CFIF LISTLAST(CGI_SCRIPT_NAME,".") IS "htm">
<CFSET CGI_SCRIPT_NAME = LEFT(CGI_SCRIPT_NAME,LEN(CGI_SCRIPT_NAME)-4)>
<CFELSE>
<CFIF LISTLAST(CGI_SCRIPT_NAME,".") IS "html">
<CFSET CGI_SCRIPT_NAME = LEFT(CGI_SCRIPT_NAME,LEN(CGI_SCRIPT_NAME)-5)>
</CFIF>
</CFIF>
<CFSET LISTLENGTH = LISTLEN(CGI_SCRIPT_NAME,"/")>
<CFSET LIST_INDEX = LISTCONTAINSNOCASE(CGI_SCRIPT_NAME,"index.cfm","/")>
<CFSET LISTSTART = LIST_INDEX + 1>
<CFLOOP INDEX="IJK" FROM="#ListStart#" TO="#ListLength#">
<CFSET FUSEACTION= LISTGETAT(CGI_SCRIPT_NAME,IJK,"/")>
<CFSWITCH EXPRESSION = #GETTOKEN(FUSEACTION,1,'.')#>
<CFCASE VALUE="IN">
<CFSET VARIABLES.INIT = GETTOKEN(FUSEACTION,2,'.')>
</CFCASE>
<CFCASE VALUE="CD">
<CFPARAM NAME="URL.CFI" DEFAULT="#GETTOKEN(FUSEACTION,2,'.')#">
</CFCASE>
<CFCASE VALUE="CN">
<CFPARAM NAME="URL.CFT" DEFAULT="#GETTOKEN(FUSEACTION,2,'.')#">
</CFCASE>
<CFCASE VALUE="KW">
<CFSET VARIABLES.KEYWORD = GETTOKEN(FUSEACTION,2,'.')>
</CFCASE>
<CFCASE VALUE="AL">
<CFSET VARIABLES.ALPHA = GETTOKEN(FUSEACTION,2,'.')>
</CFCASE>
<CFCASE VALUE="SY">
<CFSET VARIABLES.SUBYP_ID = GETTOKEN(FUSEACTION,2,'.')>
</CFCASE>
<CFCASE VALUE="HD">
<CFSET VARIABLES.HDG_ID = GETTOKEN(FUSEACTION,2,'.')>
</CFCASE>
<CFCASE VALUE="OR">
<CFSET VARIABLES.ORG_ID = GETTOKEN(FUSEACTION,2,'.')>
</CFCASE>
<CFCASE VALUE="SC">
<CFSET VARIABLES.ORG_IDSC = GETTOKEN(FUSEACTION,2,'.')>
</CFCASE>
<CFCASE VALUE="LL">
<CFSET VARIABLES.ALPHAL = GETTOKEN(FUSEACTION,2,'.')>
</CFCASE>
<CFCASE VALUE="ST">
<CFSET VARIABLES.START = GETTOKEN(FUSEACTION,2,'.')>
</CFCASE>
<CFDEFAULTCASE>
<CFOUTPUT>ERROR!</CFOUTPUT>
<CFABORT>
</CFDEFAULTCASE>
</CFSWITCH>
</CFLOOP>
As another poster noted:
"You can strip out the items after the real URL by using either CGI.Path_Info
or CGI.Script_Name (depending on your server)
With this it gives you the complete list after the directory"
best, paul
At 10:47 AM 1/8/01 -0500, you wrote:
>How do you do this?
>----- Original Message -----
>From: "paul smith" <[EMAIL PROTECTED]>
>To: <[EMAIL PROTECTED]>
>Cc: <[EMAIL PROTECTED]>
>Sent: Monday, January 08, 2001 10:44 AM
>Subject: Re: using foo/1/foo2/2 instead of foo=1&foo2=2
>
>
> > And your question is?
> >
> > best, paul
> >
> > PS> The Fusebox method allows this as an option. www.fusebox.org
> > I use my own version.
> >
> > At 10:21 AM 1/8/01 -0500, you wrote:
> > >I am running IIS 5.0/4.0 web servers and I would like to use a backslash
> > >to seperate my var names/values. Amazon uses this method and I like it
> > >because it helps discourage url hacking (at least I think so).
> >
> >
> >
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Structure your ColdFusion code with Fusebox. Get the official book at
http://www.fusionauthority.com/bkinfo.cfm
Archives: http://www.mail-archive.com/[email protected]/
Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists