2

現在、PHPでlmsを作成しています。lms では、管理者はユーザーが回答する SCORM (1.2) ファイルをアップロードでき、結果はデー​​タベースに保存されます。(userID、scormID、grade の形式のテーブルの考え方)

Moodle などの他のオプションも調べましたが、必要な機能がありません (変更を加えても)。

SCORM を処理できない場合、ストーリーライン 2 からエクスポートされた別の形式で使用できるものはありますか?

4

1 に答える 1

1

SCORM1.2 に必要なサーバー部分の基本バージョンを実装するのは簡単です。詳細を説明する静かな長いガイドがあります: http://www.vsscorm.net/ - おそらくこれはあなたの質問に答えます。SCORM のすべての機能をサポートしたい場合や、あらゆる種類の SCORM1.2 コンテンツを処理したい場合はさらに多くの癖や困難があるため、明示的に「基本バージョン」と呼んでいます。

編集

私はストーリーライン 2 について十分な情報を持っていませんが、SCORM の実装が実用的なソリューションである場合、必要なことを簡単に要約すると次のようになります。

まず、SCORM パッケージのインポートを実装する必要があります。これは簡単な部分です:

  • ZIP ファイルを公開フォルダに解凍します。
  • imsmanifest.xml を解析します。重要なものは、アイテムと関連するリソースです。アイテムのタイトルと関連するリソース (SCO) のエントリ URL を含むテーブルを作成できます。単純な実装の場合、これで十分です

次に、ランタイム環境を実装する必要があります。

  • SCO のエントリ URL をロードする (i) フレームと、SCORM 機能を提供する JavaScript オブジェクト「API」を含む html ラッパーが必要です。
    • LMSInitialize: SCORM 環境をセットアップします。パラメータとして空の文字列が必要です
    • LMSFinish: セッションを終了します。パラメータとして空の文字列が必要です
    • LMSGetValue: cmi データ モデルから値を取得します (例: "cmi.core.score.raw")。注意: 戻り値は常に文字列です!
    • LMSSetValue: cmi データ モデルから値を設定します。
    • LMSCommit: LMS に cmi データ モデルを永続的に保存するように指示します。LMSSetValue を実装して値をデータベースに直接書き込む場合、スタブ実装を作成できます。
    • LMSGetLastError: 最後のエラー コードを取得します
    • LMSGetErrorString: 単純な実装の場合は、提供されたエラー コードを返すだけです
    • LMSGetDiagnostic: 単純な実装の場合は、提供されたエラー コードを返すだけです
  • API は、たとえばユーザー名、スコア、レッスンのステータスなどを保持する「cmi」データ モデルを保持します。

前述したように、これは単なる要約ですが、この主題に関する文献は数多くあります。ここにもう1つのソースがあります:http://scorm.com/scorm-explained/

于 2015-11-06T16:16:50.440 に答える