I don’t refer to the PHP manual very much for commonly used functions, so I almost missed this one. The ‘mysql_escape_string’ function that’s used in subs.php to prepare data for insertion into the database is deprecated as of PHP 5.3 and should be replaced with ‘mysql_real_escape_string’.
Continue reading →
In the past, I’ve had some intermittent problems with a SCO loading but showing a Javascript error. Although I couldn’t pin it down conclusively, it seemed to result from an incomplete download of some kind. Since forcing a reload with CTRL-R or CTRL-F5 usually solved the problem, I just put it down to something that I had to live with because SCORM forces us to use Javascript which can be very fickle.
But, recently, reader ‘deighvan’ reported a similar problem and, even better, came up with a simple solution. So I’ve incorporated a slightly modified form of this solution in a new version of the rte.php file.
Continue reading →
The problem SCO described in Step 52 is now working correctly, so why do I need to look any further? There’s a more subtle problem.
The ‘datamodel.element._children’ mechanism described in the SCORM RTE specification seems to have been developed so that there’s a way for a SCO to determine which data elements are supported.
Continue reading →
You can now follow the progress of VSSCORM on Twitter – search for username VSSCORM, or click on this link: http://twitter.com/VSSCORM
I’m still trying to fix the problem that my reader’s SCO highlighted (described in this post). I’ve implemented the optional data element that it’s trying to use – cmi.comments – but that hasn’t fixed the problem. So I need to look elsewhere.
The SCO is trying to save the user’s comments to the LMS database when the SCO is closed. So, perhaps, the API code isn’t being given enough time to commit all of the data values to the database before everything shuts down.
Continue reading →
A reader recently contacted me with a problem that raised some interesting issues. Hopefully, we’ve now resolved the problem but, since the issues might well occur with other SCOs, what I’d like to do is to walk through the process and show how the VSSCORM RTE has to be modified to deal with this situation.
Here’s what was happening. The SCO in question was a technical training course – the subject is unimportant – and it ran OK except for one problem. The SCO author(s) had very helpfully provided a small text area on the SCO screens where a student could write notes and have them saved between sessions – in effect, online ‘PostIt’ notes. The problem was that the notes weren’t being saved to the database when the SCO was closed.
Continue reading →
I’m taking a break from development to re-arrange the VSSCORM website. I think the new structure and navigation will make it easier for me to organize the content, and for you to find it when you need it.
This will – inevitably – involve quite a few changes and, during that time, things may well break. So please bear with me while I make the transition.
OK – I’ve come quite a long way with understanding the SCORM 1.2 standard (although it would be wrong to claim that I understand all of its nuances), and a fair way with the development of the VSSCORM interface. So, this is a short post to talk about where I think I’m going next with the VSSCORM project, and to ask for your feedback.
Continue reading →
After a somewhat longer time than I’d planned, here’s Rev 2.1 of the VSSCORM 1.2 RTE. It includes the following changes from Rev 2.0:
Continue reading →
An eagle-eyed reader of the blog has brought the following bug to my attention.
In all cases in the php code, you use the string “ab initio” as the value for cmi.core.entry when it is the first time a SCO is used.
According to the SCORM 1.2 spec doc, SCORM_1.2_RunTimeEnv.pdf – page 3-22, (page 34 of the file), the value should be “ab-initio” with a hyphen.
Continue reading →