FUDforum
Fast Uncompromising Discussions. FUDforum will get your users talking.

Home » Imported messages » comp.lang.php » Most efficient way to randomize a quiz from a database
Show: Today's Messages :: Polls :: Message Navigator
Return to the default flat view Create a new topic Submit Reply
Re: Most efficient way to randomize a quiz from a database [message #170568 is a reply to message #170563] Mon, 08 November 2010 16:45 Go to previous messageGo to previous message
Matthew Leonhardt is currently offline  Matthew Leonhardt
Messages: 9
Registered: November 2010
Karma:
Junior Member
"Mason Barge" <masonbarge(at)gmail(dot)com> wrote in message
news:s87gd61ldtnkeuuc817uiej2qmv0s4vc88(at)4ax(dot)com...
> I'm creating a quiz using PHP 5.3 and MySQL (mysqli). The database has
> about 1000 questions and answers, in categories, and I want to ask 12
> randomly selected questions, one at a time.
>
> Which would be more efficient:
>
> 1) Make one call to the database and build an array, stored in session
> variables, of 12 randomly chosen rows; or

Most likely this method. You're talking about a fairly small amount of data
though, so I highly doubt you need to be worried about efficiency...

> 2) Make 12 requests to the database?
>
> I'm open to other general approaches if anyone has a suggestion I haven't
> considered.

You could also opt for a hybrid solution...generate a session array
containing 12 primary keys and then with each page load, just pop the next
question, so to speak :)

> I'd like to avoid reloading the page after every answer and I don't see
> how I could use Ajax with #1. The quiz has to be in PHP because I need to
> generate the final score as a PHP variable, not a javascript variable.

I don't see how #1 prevents an AJAX solution. What's your cause for worry
about that? Regarding the language in which the final score is calculated,
look at json_encode() and json_decode() for convenient data-passing between
the two languages.
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: how to retrieve xml data from three tables of mysql
Next Topic: Cronjob Apache module v CGI
Goto Forum:
  

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ]

Current Time: Sat Nov 30 02:17:18 GMT 2024

Total time taken to generate the page: 3.49777 seconds