1 Reply Latest reply on Mar 18, 2014 2:41 AM by BKBK

    issue with onRequestStart query info

    talofer99

      I have a shopping cart that works from main code with VD on IIS.
      So all the code is places in one directory, and for each store I create a Virtual directory on the IIS
      so a store link will look like this :

      1. www.shoppingcart.com/store/XXXXX
        when the xxx is the prefix of that store.
        in the application.cfc ONREQUERSTSTART I take the last part of the URL and match it with the PREFIX I in the list of stores on the DB.
        to get the prefix I do this :

       

      <cfset request.store.prefix = "#listgetat(cgi.SCRIPT_NAME,listlen(cgi.SCRIPT_NAME,'/')-1,'/')#">

       

      Then to get the right store info I used to do this :
      <cfset qreadStoreInfo = application.cfc.StoreDetails.read(filterStorePrefix request.store. prefix)>

                             

      It all worked well (for over 4yrs) till about 2-3 moths ago (or at least then one of the client complained) when we start seeing the WRONG output of store info, like stores were "mixed" some how – totally randomly.

      After following it for a few days I noted that the query that is returned from the CFC is for the wrong store.

      At first I thought it’s the request.store.prefix not "stored" by the time I get to the query line so I changed this :

      <cfset qreadStoreInfo = application.cfc.StoreDetails.read(filterStorePrefix= "#listgetat(cgi.SCRIPT_NAME,listlen(cgi.SCRIPT_NAME,'/')-1,'/')#")>

       

      Yet I still get the wrong value back from the Query, and when looking at the Query I can see that the VALUE been sent in is wrong, even that I know for sure that I sent in the right value, since in the email I do an out put of the info on the page.

      Did any one encountered any thing like this before ?
      Any leads on how to maybe start handling ?

      Is there a way that if the client is looking at 2 site at the same time thus queries can get "mixed", even that they are done on the ONREQUEST part of the application.cfc (IE each page should be processed on its own)