Some of the very old websites that we migrate to Joomla 2.5 may show the following error on K2 or VirtueMart pages:
JUser: :_load: Unable to load user with ID: 62 (Note that 62 might be another number, such as 42)
The reason for the error is that the component is trying to load a user (such as the user that created the article in K2) but is not able to find it (which is very normal in a Joomla 2.5 migration, since the main super administrator, who typically has an ID of 62 in Joomla 1.5, has a different ID in Joomla 2.5).
There are multiple fixes for this issue:
- Suppress the error by changing a core file
Although we really don’t like changing core files, we have to say that this an extremely easy fix that is guaranteed to work. Here’s how to do it:
- Open the file user.php (through FTP) located under the libraries/joomla/user directory.
-
Remove the following line (which is line 886):
JError::raiseWarning('SOME_ERROR_CODE', JText::sprintf('JLIB_USER_ERROR_UNABLE_TO_LOAD_USER', $id));
-
Save the file and upload it back.
-
That’s it!
Note that even if the user.php is overwritten in a future Joomla update, all you need to do is to apply the above again and you should be OK!
-
Set the JLIB_USER_ERROR_UNABLE_TO_LOAD_USER string to empty
This is another change to a core file, but this change is less likely to be overridden by future Joomla updates, this is because you are changing a language file. Here’s how to do it:
- Open the file en-GB.lib_joomla.ini located under the language/en-GB directory.
-
Change the following line (which is typically line 624):
JLIB_USER_ERROR_UNABLE_TO_LOAD_USER="JUser: :_load: Unable to load user with ID: %s"
to:
JLIB_USER_ERROR_UNABLE_TO_LOAD_USER=""
…and that should work!
-
Fix the data
Fixing the data consists of going into the database and changing all references to the user ID 62 with another user (typically the first super admin created on your Joomla website).
This can be done either manually or through a script. If done manually, then this can take many hours (if not days) and is definitely error prone. If done through a script, then it can be done quickly but you might risk breaking the whole website if your script goes berserk. Beware!
-
Set the ID of a newly created super administrator to 62
You can’t choose which ID a user will have before it’s created. But, once that user is created, you can change its ID. Here’s how you can do that:
- Create a super administrator through Joomla’s User Manager.
-
Change that user’s ID to 62 in the #__users table through phpMyAdmin.
-
Change the ID of that user in the table #__user_usergroup_map to 62.
The above is, in our opinion, the best way to address this issue, but you will need to have access to phpMyAdmin (or you need to have programming skills) to do it.
-
Fix the script that tries to load the ID
While this might sound like the best idea, it can turn into a horrible nightmare. This is because K2 and VirtueMart are both extremely complicated and delicate extensions and trying to change their core is much worse than changing Joomla’s own core. Keep clear if you’re not a programming expert, and consider the much easier options listed above!
If you’re seeing this error on your website and you don’t feel comfortable fixing it yourself (even after reading our guide), then why not contact us? We can fix it for you in no time, we won’t charge you much, and we are very, very reliable! What are you waiting for?
Great article. Helped me more than any other I found.
It is extremeley easy now with J2.5 and above to create a language override for JLIB_USER_ERROR_UNABLE_TO_LOAD_USER with no core changes.
I went with the new user change ID and disabled that user.
Thanks!
I’ve just successfully used the “Set the ID of a newly created super administrator to 62” to fix my Joomla 3.5.1 site (my rogue user was actually #62!). I wouldn’t even bother trying the other methods if you’ve got basic phpMyAdmin access/knowledge. Thanks a million guys!
Thank you so much for your help on this. I find your articles to be very helpful. I am also very impressed with the technical assistance I received. 3 other programmers failed to fix the issue but you did. Again, thank you!