+1, but it also kinda depends on what you want to do with it later, and how much. if you want to re-use filled-in reports on the javascript end, you may want to use json_encode() instead of serialize(). if you plan to have many (say >5000) reports filled in and want users to be able to search quickly on values or generate reports based on searches, then you'd need an actual datamodel, so mysql can do the searching, sorting and adding. On Sat, Mar 13, 2010 at 7:55 PM, paragasu <paragasu@xxxxxxxxx> wrote: > On Sun, Mar 14, 2010 at 2:10 AM, tedd <tedd.sperling@xxxxxxxxx> wrote: > >> Hi gang: >> >> I just completed writing a survey that has approximately 180 questions in >> it and I need a fresh look at how to store the results so I can use them >> later. >> >> The survey requires the responder to identify themselves via an >> authorization script. After which, the responder is permitted to take the >> survey. Everything works as the client wants so there are no problems there. >> >> My question is how to store the results? >> >> I have the answers stored in a session variable, like: >> >> $_SESSION['answer']['e1'] >> $_SESSION['answer']['e2'] >> $_SESSION['answer']['e2a'] >> $_SESSION['answer']['e2ai'] >> $_SESSION['answer']['p1'] >> $_SESSION['answer']['p1a'] >> $_SESSION['answer']['p1ai'] >> >> and so on. As I said, there are around 180 questions/answers. >> >> Most of the answers are integers (less than 100), some are text, and some >> will be null. >> >> Each "vote" will have a unique number (i.e., time) assigned to it as well >> as a common survey id. >> >> My first thought was to simply record the "vote" as a single record with >> the answers as a long string (maybe MEDIUMTEXT), such as: >> >> 1, 1268501271, e1, 1, e2, 16, e2a, Four score and ..., e2a1, , >> >> Then I thought I might make the data xml, such as: >> >> <survey_id>1</survey_id><vote_id>1268501271</vote_id><e1>1</e1><e2>16</e2><e2a>Four >> score and ...</e2a><e2ai></e2ai> >> >> That way I can strip text entries for <> and have absolute control over >> question separation. >> >> Then I thought I could make each question/answer combination have it's own >> record while using the vote_id to tie the "vote" together. That way I can >> use MySQL to do the heavy lifting during the analysis. While each "vote" >> creates 180 records, I like this way best. >> >> Then I thought, what would you guys do? So, what would you guys do? >> >> Keep in mind that this survey must evaluated in terms of answers, such as >> "Of the ones who answered e1 as 1 how did they answer e2?" >> >> If there is something wrong with my preference, please let me know. >> >> Thanks, >> >> tedd >> >> -- >> ------- >> http://sperling.com http://ancientstones.com http://earthstones.com >> >> -- >> PHP General Mailing List (http://www.php.net/) >> To unsubscribe, visit: http://www.php.net/unsub.php >> >> > Hi Ted, > > How about saving the array in serialize variable to TEXT column > > $answer = serialize($_SESSION['answer']); > > to get the original array value simply unserialize the value from the > database.. > > Paragasu > -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php