Simply using <cfset session.formData = form />  didn't work, however i
did use some of Daniels code and the session scope and now all works

Thanks for all your help guys.

Cheers,

On Jul 17, 1:57 pm, "Dale Fraser" <[EMAIL PROTECTED]> wrote:
> Page 1
>
> <cfset session.formData = form />
>
> Page 2
>
> <cfset form = session.formData />
>
> Regards
> Dale Fraser
>
> http://dalefraser.blogspot.com
>
> -----Original Message-----
> From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf
>
> Of Rony
> Sent: Tuesday, 17 July 2007 12:46 PM
> To: cfaussie
> Subject: [cfaussie] Re: Forms issue
>
> Does anyone know how to pass FORM variables form one page to another?
>
> I am using CFHEADER to redirect pages and want to also include the
> form fields, which are available.
>
> Thanks
>
> On Jul 14, 10:43 am, Rony <[EMAIL PROTECTED]> wrote:
> > Hey Daniel,
>
> > Many thanks for this tremendous post.
>
> > This is exactly what i needed to get me started in troubleshooting
> > this issue.
>
> > I will have a look at integrating into my system and see how it works.
>
> > I do have file upload forms which means i would also be looking at a
> > solution/assistance for this problem as well.
>
> > Thanks so much mates, this is great.
>
> > Cheers,
>
> > On Jul 13, 6:43 pm, "Daniel Crowther" <[EMAIL PROTECTED]>
> > wrote:
>
> > > Hi Rony
>
> > > We currently use the 404 Error redirect system from our systems. The
> code
> > > below working for URL and FORM Data, except when file upload is required
> (eg
> > > multipart/form-data forms, we have some code to do these, but it is not
> as
> > > straight forward as the normal form post data). I have created an exact
> of
> > > our system with just the IIS 404 system, This is how we set the system
> up.
>
> > > Using Coldfusion 7 with IIS 6 on Windows 2003 server.
>
> > > IIS Setup.
>
> > >       Home Directory Tab
>
> > >       - Click "Configuration" button, in the Wildcard application maps
> > > select the jrun_iis6_wildcard.dll and click edit. Make sure that "Verify
> > > that file exists is ticked (if it is unticked it will not work)
>
> > >       Custom Error Tab
>
> > >       - Set 404 "Message Type:" to URL and "URL" to /index.cfm (or
> whatever
> > > page you wish to do the processing after the URL/Form variables have
> been
> > > reprocessed.)
>
> > >       - I cannot remember exactly, but the 405 might also need to be set
> to
> > > that URL on IIS5.
>
> > > ################################ Start Code
> > > ####################################
>
> > > Application.cfc
>
> > > <cfcomponent>
>
> > >       <cffunction name="onRequestStart">
>
> > >             <h3>Data Dump before URL 404</h3>
>
> > >             <cfinclude template="DataDump.cfm">
>
> > >             <cfscript>
>
> > >                   if (left(cgi.query_string,4) eq '404;') {
>
> > >                         // Step 1. Capture Query String into URL404
> variable
>
> > >                         URL404.Original = cgi.query_string;
>
> > >                         // Step 2. Clean 404 Error
>
> > >                         URL404.Complete =
>
> replace(URL404.Original,"404;http://#cgi.server_name#:#cgi.server_port#/","";
> > > ,"ALL");
>
> > >                         // Step 3. Capture for Actual Query Param
>
> > >                         if (FindNoCase("?",URL404.Complete)) {
>
> > >                               URL404.ActualQueryString =
> > > ListGetAt(URL404.Complete, 2, "?");
>
> > >                               URL404.Complete =
> > > ListDeleteAt(URL404.Complete, 2, "?");
>
> > >                         }
>
> > >                         if (FindNoCase("&",URL404.Complete)) {
>
> > >                               URL404.ActualQueryString =
> > > ListGetAt(URL404.Complete, 2, "&");
>
> > >                               URL404.Complete =
> > > ListDeleteAt(URL404.Complete, 2, "&");
>
> > >                         }
>
> > >                         if (FindNoCase(";",URL404.Complete)) {
>
> > >                               URL404.sessionstring =
> > > ListGetAt(URL404.Complete, 2, ";");
>
> > >                               URL404.jsessionid =
> > > ListGetAt(URL404.sessionstring, 2, "=");
>
> > >                               URL404.Complete =
> > > ListDeleteAt(URL404.Complete, 2, ";");
>
> > >                         }
>
> > >                         // Step 4. Capture Filename from Query String
>
> > >                         URL404.Include = ListGetAt(URL404.Complete,
> > > listlen(URL404.Complete,"/") ,  "/");
>
> > >                         // Step 5. Check that Filename exists, must
> contain
> > > a dot
>
> > >                         if (findnocase(".",  URL404.Include)) {
>
> > >                               URL404.VirtualQuerystring =
> > > ListDeleteAt(URL404.Complete,  listlen(URL404.Complete,"/") ,  "/");
>
> > >                         } else {
>
> > >                               URL404.Include = "index.htm";
>
> > >                               URL404.VirtualQuerystring =
> URL404.Complete;
>
> > >                         }
>
> > >                         if(find(".",URL404.Include)) {
>
> > >                               URL404.Extension =
> > > listLast(URL404.Include,".");
>
> > >                         } else {
>
> > >                               URL404.Extension = "";
>
> > >                         }
>
> > >                         url["Extension"] = URL404.Extension;
>
> > >                         // Step 6. Split Virtual Query String Back into
> URL
> > > Variables.
>
> > >                         ActionList = "";
>
> > >                         for(QCounter=1; QCounter LTE
> > > ListLen(URL404.VirtualQuerystring,"/"); QCounter=QCounter+1) {
>
> > >                               QItem =
> > > ListGetAt(URL404.VirtualQuerystring,QCounter,"/");
>
> > >                               if (FindNoCase(":",QItem)) {
>
> > >                                     //For
> Examplehttp://www.somedomain.com/var_a:1/var_b:2/index.htmwillresultin
> url.var_a
> > > = 1 and url.var_b=2
>
> > >                                     url[ListGetAt(QItem, 1, ":")] =
> > > "#ListGetAt(QItem, 2, ":")#";
>
> > >                               } else {
>
> > >                                     // If variable is not a list pair
> > > seperated by colons, then add to comma seperated list.
>
> > >                                     ActionList =
> > > listappend(ActionList,QItem);
>
> > >                               }
>
> > >                         }
>
> > >                         url["UrlActionList"] = ActionList;
>
> > >                         // Step 7. Split Actual Query String Back into
> URL
> > > Variables.
>
> > >                         if (isDefined("URL404.ActualQuerystring")) {
>
> > > variables[ListGetAt(ListGetAt(URL404.ActualQuerystring,  1 ,  "&"), 1,
> "=")]
> > > = "#ListGetAt(ListGetAt(URL404.ActualQuerystring,  1 ,  "&"), 2, "=")#";
>
> > > url[ListGetAt(ListGetAt(URL404.ActualQuerystring,  1 ,  "&"), 1, "=")] =
> > > "#ListGetAt(ListGetAt(URL404.ActualQuerystring,  1 ,  "&"), 2, "=")#";
>
> > >                         } else {
>
> > >                               // No additional query parameters exist.
>
> > >                         }
>
> > >                         //Step 8. Capture Form Variables
>
> > >                         URL404.VirtualPrequestData =
> gethttprequestdata();
>
> > >                         if
> > > (StructKeyExists(URL404.VirtualPrequestData.headers,"Content-Type") AND
>
> (FindNoCase("application/x-www-form-urlencoded",URL404.VirtualPrequestData.h
> > > eaders["Content-Type"]))) {
>
> > >                               //Normal Form Post.
>
> > >                               URL404.VirtualFormData =
> > > URL404.VirtualPrequestData.content;
>
> > >                               for(FCounter=1; FCounter LTE
> > > ListLen(URL404.VirtualFormData,"&"); FCounter=FCounter+1) {
>
> > >                                     FItem =
> > > ListGetAt(URL404.VirtualFormData,FCounter,"&");
>
> > >                                     if (FindNoCase("=",FItem)) {
>
> > >                                           form[ListGetAt(FItem, 1, "=")]
> =
> > > "#URLDecode(ListGetAt(FItem, 2, "="))#";
>
> > >                                     }
>
> > >                               }
>
> > >                         } else if
> > > (StructKeyExists(URL404.VirtualPrequestData.headers,"Content-Type") AND
>
> (FindNoCase("multipart/form-data",URL404.VirtualPrequestData.headers["Conten
> > > t-Type"]))) {
>
> > >                               //Multipart Encoded Form Post (EG When
> > > uploading a File)
>
> > >                               URL404.VirtualFormData =
> > > URL404.VirtualPrequestData.content;
>
> > >                               URL404.VirtualFormDataBoundary =
> > > listgetat(URL404.VirtualPrequestData.headers["Content-Type"],2,"=");
>
> > >                               //Decode Binary to String
>
> > >                               // INSERT CODE TO DECODE BINARY DATA HERE
>
> > >                         }
>
> > >                   } else {
>
> > >                         URL404 = StructNew();
>
> > >                   }
>
> > >             </cfscript>
>
> > >             <!--- The following code is to force a 404, when the
> extension
> > > is not an allow extension. Required for missing Images and other file
> types.
> > > --->
>
> > >             <cfif (len(URL404.Extension) and NOT
> > > ListFindNoCase("htm,html,cfm,cfml",URL404.Extension))>
>
> > >                   <!--- Send 404 Header Response --->
>
> > >                   <cfheader statuscode="404" statustext="Not Found">
>
> > >                   <!--- <cfinclude template="Error404.cfm"> --->
>
> > >             <cfelse>
>
> > >                   <!--- Send 200 Header Response, Required when page was
> > > generated from Custom URL 404 --->
>
> > >                   <cfheader statuscode="200" statustext="OK">
>
> > >             </cfif>
>
> > >             <hr>
>
> > >             <h3>Data Dump after URL 404</h3>
>
> > >             <cfinclude template="DataDump.cfm">
>
> > >             <br>
>
> > >       </cffunction>
>
> > > </cfcomponent>
>
> > > Index.cfm - This page will be executed after the application.cfc has
> been
> > > processed.
>
> > > <cfheader statuscode="200" statustext="OK">
>
> > > <h3>This is the index.cfm page.</h3>
>
> > > <cfdump var="#url#">
>
> > > DataDump.cfm - This file is just to show the data before and after the
> URL
> > > 404 data has been processed
>
> > > <cfdump var="#cgi.query_string#" label="Query String Data"><br>
>
> > > <br>
>
> > > <cfdump var="#url#" label="URL Data">
>
> > > <br>
>
> > > <cfdump
>
> ...
>
> read more >>


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"cfaussie" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/cfaussie?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to