Another way is to leave the already asked questions out of your new
query each time:
<cfquery name="getquestion" datasource="#request.DSN#">
SELECT questions.questionid, questions.questiontext
FROM questions
WHERE questions.questionid NOT IN (#listOfPreviouslyAskedQuestions#)
</cfquery>
<cfset displayRow = RandRange(1,getquestion.recordcount)>
<cfoutput query="getquestion" maxrows="1"
startrow="#displayRow#">#questiontext#</cfoutput>
On 3/29/12 1:58 AM, .jonah wrote:
> Either keep a list of questions already asked and query again if it
> tries to give you one you've had before or keep a a copy of the query
> for each user and remove the row after you ask each question.
>
> On 3/29/12 1:21 AM, Akos Fortagh wrote:
>> hi there, wondering if someone might be able to help with this please.
>> I have a simple questions table and I'm displaying one randomly generated
>> question from it at a time. User clicks a button and the page reloads to
>> give the next question.
>> So far I have this simple bit working fine:
>> <cfquery name="getquestion" datasource="#request.DSN#">
>> SELECT questions.questionid, questions.questiontext
>> FROM questions
>> </cfquery>
>>
>> <cfset displayRow = RandRange(1,getquestion.recordcount)>
>>
>> <cfoutput query="getquestion" maxrows="1"
>> startrow="#displayRow#">#questiontext#</cfoutput>
>>
>> What would be the easiest approach to make sure that one question cannot be
>> delivered twice?
>> Any help would be greatly appreciated.
>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Order the Adobe Coldfusion Anthology now!
http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion
Archive:
http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:350582
Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm