Export results to a file


I am an engineer and a teacher.

I use drupal7 and I haven't tested h5p module yet, but I believe h5p is a brilliant idea to be QUIZ in teaching. Before I start to test, I am curious about how to export the interactive results. It is possible to a file or to the database?



My question actually is: do I need to write code myself (such as interactive document) to achieve this function? Is there any tool to make it simpler?



This feature is in place in Joomla, in H5P core and in the H5P content types, but not in the Drupal integration yet. You would either have to code it yourself for the Drupal integration, or wait. I think it will take a month until this feature is in place.

Does exporting the interactive results to Wordpress feature works?

falcon's picture

It haven't been implemented for Wordpress yet. It is now implemented and released for Joomla, implemented but not released for Drupal 7 and not implemented for Wordpress and Drupal 6.

Hopefully Wordpress will get this this month.

It would be really great to have the Drupal 7 implementation very soon as I need to ensure to be able to generate a certificate, if the user passed the test successfully. Therefore I need the score and the result information...

falcon's picture

We hope to release it this week. Everything is finished we're in the final stage of testing.


I would like to have user histroy data (summit some interactive questions in h5p), not only the score. To a teacher, it would be great to know what does students know. Well, of course, the score would be the first step.

I assume that the user history data should be linked to drupal users. Therefore, access to database is a must. Just a quick question, should the implementation at h5p library(Javascript) or h5p module(PHP)? Where can I check the current implementation (maybe dev version?) about this part?

It would be wonderful to have this function soon.

falcon's picture

When we add backend result evalutation it will also be possible to know what the user answered in addition to the users score. I don't have an eta for this.

I you have git you may download the dev version of H5P for Drupal 7 by following these instructions:


The results are stored in the database. Today the js evaluated the results and stores it via ajax. In the next generation js will send the users answer to the backend(php) and the backend will evaluate it, return the result and store everything in the database. In addition we will add support for Tin Can.

I checkout the code. Great! I could help to test for now, if it is helpful. Do you have js sample (*.h5p) to support this function?

Anyways, great job!

falcon's picture

I'm not sure about which libraries support it, but atleast I think fill in the blanks supports it. We will be very happy to recieve your feedback.

All my current modules are built with the "presentation" module and only have multiple choice questions.
So having it for multiple choice questions would be great.
The necessary process for me would be: after SUCCESSFUL test completion and display of the scores the user would be provided with a button for example to be redirected to another page. That would be the easiest way from my opinion, because anyone then can do with it what he wants: creating a certificate, provide additional information and so on.
In case of no success the user would NOT receive a button with a link, but a standard text would be displayed such as "please start the test again". What concerns me: I do not need the scores in detail, for me it is only important: passed /not passed because currently in the presentation module, I already can determine the % for passed/not passed.
May be for others the scores in detail are important, I just thought, one could start with an easy approach for the beginning....

falcon's picture

I see. In Coursepresentation the result will be saved to the database when the users displays the solution.

You may provide us with a patch to enable this redirect towards the end and we will add it to coursepresentation or we will do the job for you as a consultancy job, but we're not able to provide you with this feature for free at the moment.

I tested the code I checkout (from git). I download fillInBlank (736.h5p) from the web site. I answer the question and press the "displays the solusion" button. I suppose that I will see the "user results" somewhere, but where (I mean history data binding to the user)?

I found the code in h5p.module about saving user results. I could take a look of 736.h5p, but I would really appreciate if you could give me some brief idea (about how to use already-implemented functions).


falcon's picture

My bad, results will only be displayed if you have views installed. There will be a tab  on each H5P node and a tab on the user profile pages. I think the tab is named points.

I had my steering committee presentation today for an overall Go/NoGo decision for our new E-Learning portal concept: all went well so I already created a requirement for our dev team to make usage of the scores to create a pdf certificate. As we'll go live somewhere in October, we would have a solution for it soon.
I could -same as hosais- just need some guidance for the approach how to access the scores.
From our side, we'll step a bit further, as we would bridge the scores with existing registered user data for the certificate. If the coding and testing is done, I could share the relevant parts/steps then, but I really first need the basic infos for the approach.
Btw: I checked out the new h5p dev version yesterday, and after some confusion, I got the process for the new libraries upgrade correctly. Great work, really, thanks for all the effort! Like magic, the new interactive video function was there for example :-)

falcon's picture

It is up to each library to decide when the score is beeing saved. Most libraries saves scores when you press "Check answers" or similar.

Results are available as tabs on node pages and user pages if you have views installed.

We're happy to hear that you're going for H5P in your portal. If there are missing features in H5P that makes it hard for you to achieve what you're trying to achieve we'll be happy to help you out. For detailed discussion about your portal and how we can help(we could rush things that we're planning to do anyway for free) please contact me through my contact form or the H5P.org contact form.

"Today the js evaluated the results and stores it via ajax. In the next generation js will send the users answer to the backend(php) and the backend will evaluate it, return the result and store everything in the database. "
I checked the DB (latest h5p dev version) installed, so I could see that currently only DragN'drop stores user scores in the DB, not coursepresentation module.
It' good to hear that we will have all that information stored in DB h5p_userpoint table for registered users in the near future, but for us it is only useful for statistical reasons.
I need the following: someone executes the test without log-in, then no values are stored in the DB, what makes a lot of sense sense and is ok. So if our policy is that everyone without having to login can perform a test, I need an approach on how to access his/her score. So I analyzed the cp.js around lines 999-1049.
Let me know if I could go the following way: the values returned there could be used for further processing, so rather than just displaying them in a (temporary) table in the pop-up window, we could pass those returned values to another function for the certificate generation, isn't it?
One more question: where to determine the min score to pass a test successfully? Only in the .js itself?

falcon's picture

I believe you are right, but it would probably be better if we made it possible to hook into this system so that you wouldn't have to change any of the H5P code? The code in cp is being worked on every week.

If we triggered an event everytime a user submits a score(logged in or not) you would probably be able to do your thing?

A configurable minimum score for passing a test is a feature that isn't supported by any of the libraries yet I think. It won't be a big job to add this feature. We would be more than happy to support you in creating patches/pull requests for adding this feature to the libraries where you need it.

I just installed views and ct module and now I can see the tab with the results information for each E-Learning content type per logged in user incl. the scores achieved. The prerequisite is that that the module type would write the results achieved into that table, we know. That's really great. I would need to map userpoints with our CRM data, but this should be possible.
More challenging are the options for users not logged in: the frequent libraries changes, yes, you are right, so I discussed with our various experts today how to approach: may be it would make sense to include the usage of webstorage functionality: localStorage or sessionStorage (http://www.w3.org/TR/webstorage/).This would allow further results processing: no necessity for cookies, but also secure. There is also a ready to use .js available (http://www.jstorage.info/).
What is for me important also at that stage is that h5p's strategy should not go in the direction to exclude not-logged in users from executing tests... ;-)
Btw: colleagues today came around to tell me that your modules are really great and very useful, because they also had a look at the current test environment...

falcon's picture

Yes, I've actually written a module for Drupal in 2011 that saves userdata to the database if the user is logged in, and falls back on localStorage and session storage, and even cookies if not.

The drawbacks when using those techniques is that the website won't have access to the data and the user also loses the data when switching browser and/or device. On Schools where students share computers they will share data as well. Because of this we probably won't add support for saving data in the browser, but we will add api's allowing you to do it.

We'll never exclude not-logged in users, and we'll keep adding more ways for users to save data by for instance supporting Tin Can and LMS LTI.