cheapterp 0 Light Poster

Using cutepinkbunnies' response, I am now dumping all the data including the "duplicates" into a temp table and then querying against that to get the "unique" entries. The reason I am including a temp table is because the original dataset is a result of 5 inner joins on tables that have thousands of records. No proper indexing on these source tables is slowing down the response significantly.

cheapterp 0 Light Poster

I have a bunch of records that I get from doing multiple joins.

# Name,   ID,     Date,      Gender,     Birthday #
John Doe  111   01/02/2003     M         01/01/2001
Jane Doe  222   03/04/2005     F         02/02/2002
Jane Doe  222   **03/05/2005**     F         02/02/2002
Jim Doe   333   07/08/2009     M         10/11/2012

What I am trying to get is the below. The records vary only in one column (in this case, it's the date column). All other columns are exactly same. 

Note that I only want one row for Jane Doe. This should be the row where date is newer (or more recent).
# Name,   ID,     Date,      Gender,     Birthday #
John Doe  111   01/02/2003     M         01/01/2001
Jane Doe  222   **03/05/2005**    F         02/02/2002
Jim Doe   333   07/08/2009     M         10/11/2002

Is doing a self-join the right way to go, and if yes, can someone please explain how?

Thanks!

cheapterp 0 Light Poster

Hello:

I have a table where a column called ActiveStatus (of datatype 'bit') I am trying to run a query on may contain values Boolean values or NULL. Which means, if there are 10 rows in the table, a likely scenario would have 5 NULLs, 2 FALSEs, and 3 TRUEs.

Another possible case would be where there are 5 FALSEs, and 5 NULLs. i.e. No TRUEs.

I am trying to get the number of rows for each ActiveStatus type using a query like below:

SELECT	   COUNT(ActiveStatus)
FROM	   tblUserData
GROUP BY   ActiveStatus

I am then using this query to display the data using a server-side language by essentially using something like:
#NULLs: Display value in Row 1 of the query
#FALSEs: Display value in Row 2 of the query
#TRUEs: Display value in Row 3 of the query

Is this the best way to achieve what I am trying to? Here's why I ask:
The number of different types of values of the ActiveStatus columns can vary - sometimes TRUE, FALSE, and NULL; other times only TRUE, and NULL; still other times only TRUE, and FALSE and so on. Therefore, there is a possibility that my front-end script might bomb because there may not *be* a Row 3 to display.

What's the best way to get this done?

Hope I was clear about my problem.

Thanks!

cheapterp 0 Light Poster

By the method of elimination, I am starting to get the feeling that FireFox or its add-ons has/have something to do with it. However, I am almost positive it is not specific to version 3.6, because when this problem first showed up, I was still using FF3.5.

The reason I conclude it has got something to do with the Mozilla browser is because when I do not have a single browser window open, the machine will happily go into the power saving mode at the end of the preset timeout period. On the other hand, if a single instance of the browser is open (even though it may be absolutely idle), and my laptop will ignore the standby/hibernation instructions.

Question unrelated to this particular problem+laptop combination:
The task manager on my office desktop shows the following numbers:
'Peak Commit Charge' (PCC) = 1407288K,
'Total Commit Charge' (TCC) = 1176960K (and going further up, as I write this post)
and
'Total Physical Memory' (TPM) = 1046056K

I read somewhere that if TCC > TPM, I have to upgrade the memory. Is that an accurate statement?

Thanks!

cheapterp 0 Light Poster

Hi,
Hibernation and XP have never been good friends, you could try a lot of things and maybe even repair it for now but it could just start to play up the next time you use it.

What is really riling me up is that I have had this laptop for almost 4 years now and all this time hibernation worked no problems - no matter how many and what applications I installed and uninstalled.

I think I'll try some more (just because I am curious to find out who the culprit is) and if I still can't get it to work, maybe I'll just let it go like you say. As far as I can see looking at the Task Manager and the CPU consumed, Avast anti-virus(that I just installed a couple months back) sucks a lot of memory every now and then.

Thanks!

cheapterp 0 Light Poster

Hi all,

Of late - since maybe about 2 weeks back - my laptop just refuses to enter standby and hibernation. I have set my PC's Power Options to send it to one of these power saving modes depending on how long the machine has been sitting idle.

PC config:
Toshiba Satellite A105-S4211
Win XP - SP3
1.49 GB RAM
hiberfil.sys file size = 1.49 GB (1,600,180,224 bytes). Size on Disk also shows same size. (Never quite been able to figure out why 'Size' and 'Size on Disk' are two separate parameters which tend to have different values most of the time. That said, it's not my main concern at this time.)

Hibernation: Enabled
Free Disk Space: 3,865MB :: Disk space required to hibernate: 1,526MB


It looks to me like some process is resetting the idle timeout before the machine is due to enter hibernation. How do I find out which process that is?

EDIT: The machine does enter these modes if I FORCE it to do this, but doesn't happen via the auto-timeout Power Options. Forced Hibernation also takes longer than usual - at least 5-7 mins compared to the earlier 1-2 mins.


Thanks!

cheapterp 0 Light Poster

So if you have written that code why didn't you posted so somebody can have look at it and tell you what can be wrong?
So far it does look like you posted your assignment and expect somebody else do it for you...

You're right, peter_budo. I should have posted the code first time around. Anyway, here it is now

DECLARE @VisitType varchar(7)	--The Visit Name with which tblWindows is to be updated

--DECLARE @counter int	--Counter to check if #Visits is reached 
--SET @counter = 1

DECLARE @NumberOfVisits int -- VAR to store the #Visits the ID has 
SET @NumberOfVisits = (SELECT COUNT(Window) from tblDueVisits WHERE UserID = 1) --typically the UserID will be picked up from the webpage form.

--Get the different Visit Types
DECLARE cursorVisitNames CURSOR FOR SELECT TOP (@NumberOfVisits) VisitName FROM tblDueVisits ORDER BY VisitName

OPEN cursorVisitNames
FETCH NEXT FROM cursorVisitNames INTO @VisitType
SET NOCOUNT ON
WHILE @@Fetch_Status = 0
	BEGIN
		PRINT @VisitType  --Verify correct number of visits is selected
		
		UPDATE tblWindows SET Visit = @VisitType WHERE UserID = 1
		--SET @counter = @counter+1
		
		FETCH NEXT FROM cursorVisitNames INTO @VisitType
	END
SET NOCOUNT OFF

CLOSE cursorVisitNames
DEALLOCATE cursorVisitNames

Obviously, the UPDATE statement I have is a disaster. But anything else that I have tried won't work!

cheapterp 0 Light Poster
IF OBJECT_ID('tempdb..#DateTable', 'U') IS NOT NULL DROP TABLE #DateTable
Create Table #DateTable
(
  [Date] DateTime
)
......
......
......

Thanks Scott, that was just what I was looking for. This was my first time working with loops in MS-SQL - very useful!

cheapterp 0 Light Poster

What is the best way to generate a set of dates based on today's date? Essentially, what I wanna do is:
1. Get Current Date
2. Populate a table with future dates 6 months apart and go up until I reach, let's say, 12/31/2020

I have looked at some of the date functions offered by MS-SQL 2005, but not quite sure how to run a loop. (I use ColdFusion as the front-end)

cheapterp 0 Light Poster

Hi all,
I have a form where my colleagues enter basic details about participants in a study. The 'action' attribute of the form takes the control to a 'validateForm.cfm' script where, as the name suggests, form validation is done. If there are any problems, I show the errors as well as the form itself, this time populating the fields with the data they entered previously.

To show the form after it has been submitted, I use the <cfinclude template /> tag in validateForm.cfm. The validateForm script can be called twice from my site:
1. When the user enters a NEW participant.
2. When the user edits an EXISTING participant data.

Since both times the validation is done by the 'validateForm.cfm' script, I cannot hard-code the template name in <cfinclude>. I tried using <cfinclude template=#CGI.HTTP_REFERER# /> too, but I get a 'The filename, directory name, or volume label syntax is incorrect' error.

What am I missing?

Thanks!

cheapterp 0 Light Poster

Thanks Scott and Ramesh,
I guess the next thing for me to do is look into FTI - I have just started working on this DB, so I am not quite sure if there are any indexes at all in it!

cheapterp 0 Light Poster

I am using MS-SQL 2005 DB. One of the tables in the DB, that I inherited, has gotten upto 37000 records. And it will go up by another 50k records soon. Does that make too much data for one table? The table has about 25 columns, most of which contain VARCHAR type data.

Also, since the DB acts as a back-end to the web interface, would about 90k-100k records make the pages load slower? Since the web pages also include a 'search' functionality, every search will have to go through so many records at a time. In other words, what is the performance hit I will take for having so much data together?

Am I being paranoid about the amount of data, or does something need to be done - and if I do, what are my options?

Thanks!

cheapterp 0 Light Poster

I just got back to this site and implementing the login feature again. There is something I am not doing correct. After 5 unsuccessful login attempts, a trigger in the DB flips the AccountStatus bit from 1 (Active Account) to 0 (Suspended Acct). However, the next time when I try to login using the correct password, I keep getting redirected to the FailedLogin.cfm script.

Below is the code. When I get rid of the <cfswitch><cfcase> lines, it seems to work fine. Anyone able to figure out what's wrong?

<cfif IsDefined(HTMLEditFormat("FORM.j_username"))>
   <cfset MM_redirectLoginSuccess="RedirectLogin.cfm">
   <cfset MM_redirectLoginFailed="FailedLogin.cfm">

   <cfquery name="MM_rsUser" datasource="#request.dsn#">
         SELECT	Username, Password, FirstName, UserType, InvalidLoginAttempts, AccountStatus
         FROM 	dbo.tblLoginData
         WHERE 	Username = <cfqueryparam value="#HTMLEditFormat(FORM.j_username)#" cfsqltype="cf_sql_varchar">
         AND 	Password = <cfqueryparam value="#Hash(FORM.j_password, "SHA-256")#" cfsqltype="cf_sql_varchar">
   </cfquery>

<!--- If user SUCCESSFULLY LOGGED IN, reset previous Invalid Attempts count to ZERO --->
<cfif MM_rsUser.RecordCount NEQ 0>
       <cfswitch expression="#MM_rsUser.AccountStatus#">
	      <cfcase value="1">
		   <cftry>
		        <cflock scope="Session" timeout="30" type="Exclusive">
			       <cfset Session.MM_Username=HTMLEditFormat(FORM.j_username)>
			       <cfset Session.MM_FirstName = MM_rsUser.FirstName>
			        <cfset Session.MM_UserAuthorization=MM_rsUser.UserType[1]>

			       <cfquery name="resetInvalidAttemptsCount" datasource="#request.dsn#">
			            UPDATE		tblLoginData
			             SET			InvalidLoginAttempts = 0,
			                                        AccountStatus = 1,
					         		LastLoginTime = #Now()#
			              WHERE		Username = '#HTMLEditFormat(FORM.j_username)#'
			        </cfquery>
			</cflock>

			<cfif IsDefined("URL.accessdenied") AND false>
				<cfset MM_redirectLoginSuccess=URL.accessdenied>
			</cfif>
			<cflocation url="#MM_redirectLoginSuccess#" addtoken="no">
	
			<cfcatch type="Lock">
			<!--- code for handling timeout of cflock --->
			</cfcatch>
		</cftry>
		</cfcase>
			<cfcase value="0">
				<div id="error">Account Disabled</div>
			</cfcase>
		</cfswitch>
	<cfelse>
		<!--- If UNSUCCESSFUL LOGIN ATTEMPT was made, increment Invalid Attempts count by 1 --->			
		<cfquery name="updateInvalidAttemptsCount" datasource="#request.dsn#">
			UPDATE		tblLoginData
			SET			InvalidLoginAttempts = InvalidLoginAttempts + 1,
			LastInvalidLoginTime = #Now()#
			WHERE		Username = '#HTMLEditFormat(FORM.j_username)#'
		</cfquery>
	</cfif>

	<cflocation url="#MM_redirectLoginFailed#" addtoken="no">

<cfelse>
  	<cfset MM_LoginAction=CGI.SCRIPT_NAME>
 	 <cfif CGI.QUERY_STRING …
cheapterp 0 Light Poster

Does anyone here have experience using the Acunetix Web Vulnerability Scanner? I happened to use it on my site to check for vulnerabilities and found about 15 HIGH level ones - all of them with basically the same problem: Cross Site Scripting and Cross Site Scripting in URI.

For every input on all of my pages, I use the <cfqueryparam> tag. Numbers are meant to be entered in most of the textfields on the site. Therefore, in addition to the <cfqueryparam cfsqltype = cf_sql_float> I also set a maxlength for every text field - usually about 9 characters. Text inputs where 'VARCHAR' type data is expected are also validated on the server side (in addition to the cfqueryparam tag).

Am I still vulnerable to XSS and SQL Injection? Do I need to filter meta-characters?

cheapterp 0 Light Poster

I am using the SQL 2005 Express edition for SQL server. The database resides on another server and I connect to it from my machine through the object explorer. I have created a trigger to run certain queries and updates, but can't seem to find the trigger listed under

MyDB->Programmability->Database Triggers

I can get a list of all the objects using the SELECT * FROM sysobjects , but I am sure there has to be something in the GUI where I can look at it (and perhaps it's properties, too)

I know the trigger exists because the DB is updated exactly the way I want it to!

I have no such problems with my Stored Procedures, but do not know why my Triggers are invisible! Is the trigger hiding because it resides on a remote server?

Thanks!

cheapterp 0 Light Poster

In addition to what thesaintbug said, there is another thing you might need to change. Rather than 'Encrypting' passwords, the better option would be to Hash them. Hashing is a one-way process - which means no one will be able to guess what a user's password is even if they got their hands on the HASHed password. Encryption on the other hand has the risk of your user info being compromised if someone got to know what the PasswordKey is.

Just something for you to think about!

cheapterp 0 Light Poster

In your form declare a hidden type input and set it to 'strPassword' <input type="hidden" name="OldCode" value="<cfoutput>#strPassword#</cfoutput>" /> and then change the comparison <cfif> to <cfif Compare(FORM.spamcode, FORM.OldCode)> Keep in mind though - Hidden type fields are visible when you do a 'View Source' on the page. Therefore sensitive data should not be passed through them.

cheapterp 0 Light Poster

I am so confused, I want to add some anti-spam security to my upcoming register page but something is really wrong.
Note that my server is Coldfusion MX7 (i can not afford better) and because of that i can not use
cfimage(captcha).

This is what i have:

<cfset strLowerCaseAlpha = "abcdefghijklmnopqrstuvwxyz">
 
<cfset strUpperCaseAlpha = UCase( strLowerCaseAlpha )>

<cfset strNumbers = "0123456789">
 
<cfset strAllValidChars = (
    strLowerCaseAlpha &
    strUpperCaseAlpha &
    strNumbers
    )>
 
<cfset arrPassword = ArrayNew( 1 )>
 
<cfset arrPassword[ 1 ] = Mid(
    strNumbers,
    RandRange( 1, Len( strNumbers ) ),
    1
    )>
 
<cfset arrPassword[ 2 ] = Mid(
    strLowerCaseAlpha,
    RandRange( 1, Len( strLowerCaseAlpha ) ),
    1
    )>
 
<cfset arrPassword[ 3 ] = Mid(
    strUpperCaseAlpha,
    RandRange( 1, Len( strUpperCaseAlpha ) ),
    1
    )>
 
<cfloop
    index="intChar"
    from="#(ArrayLen( arrPassword ) + 1)#"
    to="8"
    step="1">
 
    <cfset arrPassword[ intChar ] = Mid(
        strAllValidChars,
        RandRange( 1, Len( strAllValidChars ) ),
        1
        )>
 
</cfloop>
 
 
<cfset strPassword = ArrayToList(
    arrPassword,
    ""
    )>




<cfif IsDefined("FORM.spamcode")>
    <cfif form.spamcode neq strPassword >
    not equal
    <cfelse>
   finally working
</cfif>
</cfif>



                 <cfif isdefined ("strPassword")>
                 <cfoutput>#strPassword#</cfoutput>
                 </cfif>


<form action="" method="post">
  <label>
    <input type="text" name="spamcode" id="spamcode" />
  </label>
</form>

this is just testing code but it is somehow messed up.
every time when i click on the submit button i get not equal!
I also need to add when i set up strPassword manualy instead of ArrayToList, for example
<cfset strPassword=test413> and then insert in form test413 and compare it everything is fine. You can copy/paste this code to test it. Any …

cheapterp 0 Light Poster

Hi SQL_n00b,

You might be able to change <cfif isDefined("FormSubmitted")> to <cfif isDefined("Form.Submit")> where Form.Submit is the name of the submit button.

Thanks
MC

The text field values need to be stored using #ListGetAt(FORM.txtValue, getIDs.CurrentRow)# instead of just 'FORM.txtValue'

cheapterp 0 Light Poster

Thanks buddylee17,
I am not sure why I did not think of those functions! :-O

cheapterp 0 Light Poster

I have a bunch of alphanumeric IDs for the data in my DB. The IDs may look like the foll:
0XAA001 or 1YBB010 or 2ZCC011 and so on.

Each of the 7 characters stands for something and therefore I have to extract the characters to populate the columns in the DB. I was able to use the REFind function (with the ^ special character) to grab the first 2 characters.

Extracting the subsequent characters is giving me trouble. What I want to do next is extract the 3rd and 4th characters (simultaneously) and do a comparison. Based on whether the pair is AA or BB etc, I have to populate a column in the DB.

How do I pull out the remaining characters - two at a time?

TIA!

cheapterp 0 Light Poster

You might want to check that your hosts allow .swf files to be uploaded to their servers. Most web hosts nowadays allow .swf files, but I suppose it wouldn't hurt to check!
.......... ......... .......... .......... ........... ............
.......... ......... .......... .......... ........... ............
.......... ......... .......... .......... ........... ............
As for tutorials, I find that google is my best friend there...There are AS3 tutorials all over the place!

That's about it from me I think...Hope it's of some help!
Cheers for now,
Jas.

Wowww JasonHippy! That explanation deserves more than a few reputation points!! Thanks for the detailed description!

cheapterp 0 Light Poster

Okay here's my attempt to answer your question, I to am a server-side web developer that has dabbled with flash.

1. Well the best thing to do would be get the trial version of Flash CS4 to start, u can try it for 30 days I think, then you can decide whether u want to buy it or not. There are other tools out there to create flash animation, but if you want to do custom Actionscript get Flash CS4!

2. Goes for $699USD. I remember it being over $750 CAD. Goto the source: Adobe - http://www.adobe.com/products/flash/

3. Luckily the latest flash players for each of those browsers seems to work A-OK with .swf files I've created using flash cs4, so no issues that I know of. Just have to make sure ur visitors use the latest flash player.

4. the Adobe site is once again my first spot for references: http://www.adobe.com/devnet/flash/ , tons of tutorials and examples. I usually start from there to be inspired.

Well that's it, in a nutshell!

Thanks fayola! Just the last part of my original query - What (if anything) do I need to check with the organization that hosts my website to make sure Flash works as expected?

cheapterp 0 Light Poster

Hi all,

I am a complete newbie when it comes to Flash programming. I am basically a server-side programmer with more than enough knowledge of client-side technologies. However, Flash is something I am keen on learning.

I was looking for info on the following about Flash:
1. What kind of software I would require for Flash programming. (I want to be able to use it with ColdFusion/HTML/JavaScript.)
2. How much it costs and where I could find it?
3. Are there any compatibility issues if users use IE6.0/FireFox2.0?
4. A good/recommended book+website to learn the language.

I test my code locally but the server that my websites reside on is hosted by an outside organization. Is there anything I need to check with them so the Flash aspect works as expected?

Thanks in advance!

cheapterp 0 Light Poster

I'm kinda confused so you have a table column 1 column 2 column 3, row 1 row 2 row 3 row 4 row 5 and you want var1 to show row 1,3 and 5 and var2 to show row 2,4 and 6 ?

You can set the sql statement so var1 shows columnA and var2 shows ColumnX but not sure if you can skip rows.

Actually, there are only 2 rows. So like the following:
Table:
Column 1, Column 2, Column 3, Column 4
Row 1
Row 2

What I want now is:
var 1 = Row1.Column3
var 2 = Row2.Column4

cheapterp 0 Light Poster

Is there a way to grab data from alternate records in a ColdFusion query?
Essentially, what I am trying to do is this:
I am querying my database to grab some data. 2 rows of data are returned here.
Now I want to set 2 variables - var1 = row1.columnA
and var2 = row2.columnX

How do I do this?

cheapterp 0 Light Poster

Thanks almostbob and sgweaver for your help. I am almost there and a little more experimenting with the CSS should get me through!

cheapterp 0 Light Poster

Is there somewhere that I can take a look at the problem? Are you wanting them to stack vertically?

Here's an example of a simpler 3-dropdown box form with which I am struggling with the positioning.

I wanna arrange the 3 drop down boxes next to each other, but their labels should be exactly above the respective 'selects'. The problem I am having is that when I resize the window, the labels and the select boxes do not line up with each other.

(The code below does not reflect what I had when I first posted here. I've done a lot of chopping and changing with it since then. But this is what I have as of now.)
--------------------------------------------------------------------------------------

<div align="center"style="margin-left:2%; color:#333333; font-family:Arial, Helvetica, sans-serif; font-weight:600">
	<div align="center" style="margin-left:3%;">
		<label style="padding:0.1%; margin-left:0.5%; margin-right:0.3%; text-align:center">Temp ID</label><br />
		<select name="temp_IdDropDown" style="margin-right:0.7%">
		       <option value="1">1</option>
                       <option value="2">2</option>
			<option value="3">3</option>
		</select>
	</div>
				
	<div>
		<label style="padding:3%; margin-left:1.5%; padding-right:1%; text-align:right ">Last Name</label><br />
		<select name="lastNameDropDown" style="margin-right:0.8%">
			<option value="LastName1">LastName1</option>
			<option value="LastName2">LastName2</option>
			<option value="LastName3">LastName3</option>
		</select>
	</div>
			
	<div>
		<label style="margin-left:4%;">First Name</label><br />
		<select name="firstNameDropDown">
			<option value="FirstName1">FirstName1</option>
			<option value="FirstName2">FirstName2</option>
			<option value="FirstName3">FirstName3</option>
		</select>
	</div>
		<br />

	<div align="center">
		<input type="submit" name="search" id="search" value="Search" />
		<input type="reset" name="resetForm" id="resetForm" value="Reset" />
	</div>
</div>
cheapterp 0 Light Poster

Hi,

I have a form that has a bunch of cascading drop downs - something like Country->State->City->. Each subsequent drop down is populated based on what is selected on the preceding one.

What I am having trouble with is the positioning of the labels for these dropdowns. For ex., I want the word 'Country' written over the Country dropdown, the word 'State' over the State dropdown and so on. Unfortunately, anything I try doesn't seem to work. I have used every CSS property I thought would help - margin, position, padding etc., but nothing works.

The problem is when I resize the window the labels and the dropdowns are thrown out of whack and it becomes difficult to figure out just by looking which label belongs to which dropdown box. How do I fix this and make the position of the form elements independent of the size of the window?

Thanks!

cheapterp 0 Light Poster

Woww... I missed an easy one there. Thanks Saion!

cheapterp 0 Light Poster

I have a table off which I need to parse out the data using certain criteria. The table contains 3 datetime columns called 'ReadingTakenOn', 'StartedOn', and 'StoppedOn'

Here's the criteria for selecting the records:
The Dates in the 'ReadingTakenOn' column should lie between the Start Date and Stop Dates (both inclusive)

Now, I have to further pick out records from the above selected ones based on the 'Time' values as:
If the 'ReadingTakenOn' Time lies between the 'StartedOn' and 'StoppedOn'. I am not sure if I have been terribly clear on that, so here's an example:

Let's say the ReadingTakenOn column begins on 10/15/2006 08:00 and goes all the way down to 11/15/2006 18:30.

Now assume the value for 'StartedOn' is 10/26/2006 11:00 and 'StoppedOn' is 11/15/2006 16:00.

Now I want to obtain records from 10/26/2006 11:00 to 11/15/2006 16:00 and ignore records that occur before and after these dates+times.

I am struggling to write the WHERE clause for the SQL query to achieve this

Just FYI, I am using MS-SQL 2005.

Thanks in advance!

cheapterp 0 Light Poster

Here's the problem:

One of my scripts allows users to upload MS-Excel files. When uploading the file, users are also required to enter details related to the file - details like start date, stop date, a description of what the file contains, and the file ID#.

This Excel file contains 1000s of data points each of which has a date and time record. Based on the dates entered in the form, I would like to grab only those records from the file that fall within these dates and dump all the selected data in a table in the DB.

Anyone know how I could do the "Selection of Records" part of the problem?

Thanks!

cheapterp 0 Light Poster

Could someone help me figure out how to disable user accounts in ColdFusion? What I am trying to achieve is this:
When a user makes 5 successive invalid attempts, his/her account will be temporarily locked for 20 minutes, after which they can try logging in again.
If after the first 5 attempts, they make another 5 successive invalid attempts (bringing the total # of consecutive invalid attempts up to 10) I want to lock their account permanently. The only way to reactivate the account now is by contacting the admin (in this case, me).
What is the best way to achieve this? If someone can just provide an outline (or pseudo-code), that’d be really helpful. If someone has the code for it, even better because that makes things very easy to understand.

cheapterp 0 Light Poster

Hi all,

All right, here's what I am trying to achieve but have no idea how to do it:

My site requires users to login and every page is password protected. As part of preventing hacking (to a small extent, though) I am trying to TEMPORARILY disable the user's account after they have made 5 consecutive invalid login attempts. After 10 consecutive attempts, their account is PERMANENTLY disabled and the only way to reactivate the account is by emailing me (or the admin).

I have been able to get the temporary disabling part done, but have no clue how the account can be permanently locked. Could someone help me figure this out?

Thanks!

cheapterp 0 Light Poster

Hey Guys,

I have just started working on ColdFusion, so I am relatively new to it than most of you may be. I am trying to create 'Sticky Stay-Filled' forms so that when the form is submitted, the details entered on the form show up on the page following the submit. Just FYI, the form is submitted to itself. I have done this in PHP almost a hundred times but have never done it in CF.

Here's a link to what I am looking for:
http://www.webdeveloperny.com/form.php

Any help is really appreciated!

Thanks!