Hey everyone,
        Anyone that read my recent posts "CFCOOKIE and the old switcheroo".
I am still looking for any other suggestion before I revert to using
sessions instead of cookies.  The basic problem is that I have a multiple
user environment, a class room of students, each log in to take the test:
Page1:
<cfform action="repreverification.cfm" method=post>
<cfoutput>
  <p> <br>
  
  <table width="75%" border="0">
    <tr>
      <td width="50%">Welcome Back #cookie.repname#:</td>
      <td width="50%"> 
        <input type="hidden" name="RepName" value='#cookie.repname#'>
      </td>
    </tr>
    <tr>
      <td width="50%" align="right">ID:</td>
      <td width="50%"> 
        <CFinput type=text name="RepID" maxlength="5" message="Your ID must
be 5 digits in length" size=20 required="Yes"> <b>(First 5 digits of
SSN.)</b>
      </td>
    </tr>
  </table>
  If you are not #cookie.repname# <a href="./logon.cfm?track=yes">Click
here</a>
  <p><br>
    <input type="submit" name="Submit" value="Submit">
</cfoutput>
</cfform>

That is submitted through the form action to repverification which builds
the cookies.
<cfoutput>
<cfparam name="value1" default="">
<cfparam name="counter" default="">
<cfparam name="increment" default="0">
<cfparam name="cookvalue" default="">
<cfset counter = '1'>
<cfset cookvalue = '#form.repname#'>
</cfoutput>

<!---  removes single and double quotes from entry --->
<cfloop condition="counter lt len(FORM.repname)+1">
<CFOUTPUT>
<cfset value1='#counter#'>
<cfif '#mid(form.repname,value1,1)#' EQ CHR(34) OR
'#mid(form.repname,value1,1)#' EQ CHR(39)>
<cfset cookvalue='#removechars(cookvalue,value1-increment,1)#'>
<cfset increment = '#increment#' + 1>
</cfif>
</CFOUTPUT>
<Cfset Counter = counter + 1>
</cfloop>

<!--- cookies --->
<cfif isnumeric(form.repid) is 'yes' and len(form.repid) EQ 5>
<cfapplication name="PerfTrack"sessionmanagement="Yes">  
<cfcookie name="repname" expires="NOW">
<cfcookie name="cfid" expires="NOW">
<cfcookie name="cftoken" expires="NOW">
<cfcookie name="repid" expires="NOW">
<cflock name="repvars" 
timeout="60" 
throwontimeout="Yes" 
type="EXCLUSIVE">
<CFCOOKIE NAME="CFID" VALUE="#SESSION.CFID#">
 <CFCOOKIE NAME="CFTOKEN" VALUE="#SESSION.CFTOKEN#">
<CFcookie NAME="repname"
    VALUE="#cookvalue#"
    EXPIRES="2" >
<CFcookie NAME="repid"
    VALUE="#form.repid#"
    EXPIRES="2" >
        </cflock>
<meta http-equiv="refresh" content=".1; URL=nhrepmenu.cfm">
<cfabort>
<cfelse>
The information you have provided as your ID is not numeric or does not
contain 5 digits, please click back and enter the first 5 digits of your
social security number.
</cfif>

Lastly the repmenu is pulled up.
<cfquery name="blah" datasource="ncc" blockfactor="50">
select #variables.mastertableansw#.fldname,
#variables.mastertableansw#.fldid, #variables.mastertableansw#.testnumber,
max(#variables.mastertableansw#.questionnumber) as maxquest,
max(#variables.mastertable#.questnum) as maxq
from #variables.mastertableansw#, #variables.mastertable#
where fldname = '#cookie.repname#'
and fldid = '#cookie.repid#'
and #variables.mastertableansw#.testnumber =
#variables.mastertable#.testnumber
group by #variables.mastertableansw#.fldname,
#variables.mastertableansw#.fldid, #variables.mastertableansw#.testnumber
</cfquery>
<cfoutput>
<cfif #blah.fldname# is ''>
<cfparam name="newmark" default=""> 
<cfset newmark = 'x'>
<div align="center"><b>Our records indicate that you are a first time user.
Please select from the following tests.</b></div>
<cfelse><!-- this is the if that carries question and test number -->
<b>Welcome Back #cookie.repname# your ID is #cookie.repid#
#cookie.cftoken#</b>
</cfif>
</cfoutput>
 
The problem is that reps 1 - 20 all log in.  Some reps get to the menu page
and get they're own information display...I.E. Rep 5 logs in and gets:
"Welcome back rep5," 
But many of the reps get someone elses info
Rep 2 logs in and gets: "Welcome back rep 3"
Rep 1 gets rep5
rep 7 gets rep 3 as well.   etc.
If anyone has ANY suggestions I would certianly appreciate it.  I have 12
call centers full of trainees all waiting to take their tests.  I'm starting
to feel sorry that I ever switched to cookies from session vars.
Bryan Langford 


Analyst
National Customer Operations 
Enterprise Services & Strategic Planning
Training Development and Design Team. 

Bryan Langford 


Analyst
National Customer Operations 
Enterprise Services & Strategic Planning
Training Development and Design Team. 
>  
> 
> 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Get the mailserver that powers this list at http://www.coolfusion.com
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists

Reply via email to