If you have lost the login and/or password to access your Joomla site, there are ways to still get in. You will need access to the files and database with the hosting company.

Keep in mind that there are three sets of logins and passwords associated with Joomla sites. There is a set for accessing the hosting company, a set for accessing the database and a set for logging into the back end of Joomla. If you were provided with logins and passwords, it could be you are using the wrong set to get into Joomla itself.

I don't know where my website is hosted

There are many occasions where a website owner has lost contact with the web developer and doesn't even know which company is hosting the site. Or you are a web developer that was handed an existing Joomla website to manage and the owner does not have records for the site.

You can find out this information at a website called: www.whoishostingthis.com. Simply type in the domain name and extension, ie mywebsite.org, and you will be told what hosting company has control of the web site. Keep in mind that some hosting companies use external services for their websites, and these services will be listed here. You will still need to do some research if this is the case as this 3rd party hosting company will have the interface for logging into the files and database. This is a good place to start your research, at any rate.

How do I login to the hosting company user interface?

Each company has a different method for logging in. Contact the hosting company and follow their procedures for obtaining login and password information or how to log in if you have this information. If you don't have it, you will need to prove to them that you are the owner of the site to obtain a login and password to their account interface.

Once I am into the hosting control panel, now what do I do?

You are going to need to edit the database and add a temporary user at the Super Administrator level.

This is tricky stuff, so be very careful. Figure out how you can backup the database through the User Control Panel, and do so before making any edits to the database. Do not rely on the hosting company to have a backup available.

In the control panel interface, you need to find a place for launching phpMyAdmin. This is the database interface where you can directly change information in the database tables.

Once in phpMyAdmin, you will see a list of tables on the left. You may need to click the plus sign next to the hosting account name to see all the databases, then click on another plus sign to see the tables for the database.

If there are multiple databases, and you don't know which one to edit, this information is in the configuration.php file on the root of your Joomla site. You need to access the file manager back at the hosting company's user interface and open the configuration.php file with a code editor. Look for the parameter of public $db = "...". The name of your Joomla website database is shown in quotation marks. The database table prefix is shown with public $dbprefix = "..."

Back at phpMyAdmin, you have clicked on the plus sign next to the name of your database. This lists all of the tables for this database. The users of the database are listed in the table that ends with _users. Make note of the prefix for all of the tables in the database, you will need this prefix in following steps.

We are going to make a TEMPORARY username and password, so you can get into the Administrative side of your Joomla site. As soon as you get in, you want to create a new Super Administrator in the User screen or edit the password for an existing Super Administrator. Make sure you aren't locking out someone that has access to the back if you change a password.

Run an SQL command

At the top of the database screen, you will see a tab with SQL. This is for running queries in the database. Click on SQL and you get to t screen with a large whit box for placing the query text. Erase any text that is in there currently. Add the following lines but first change the two XXXXX_ areas shown below to your database prefix that is used for the all of the tables in your sites database:

INSERT INTO `XXXXX_users`
    (`name`, `username`, `password`, `params`)
VALUES ('temporarySuperUser', 'tempSU',
    'd2064d358136996bd22421584a7cb33e:trd7TvKHx6dMeoMmBVxYmg0vuXEA4199', '');
INSERT INTO `XXXXX_user_usergroup_map` (`user_id`,`group_id`)
VALUES (LAST_INSERT_ID(),'8');

Click on Go. This step above inserts a new Super Administrator into your database. 

If you click on the table name that ends with _users, you should see a user with the name of tempSU in the list. Test that you can login to your Joomla site in another browser tab before quitting out of phpMyAdmin.

Log into the Administrative side of your Joomla site

In a browser window, type in your website's domain name followed by /administrator, for example:

mywebsitename.com/administrator

Login Form for Joomla

You will come to a login box for your new login and password that you just added to the database. Type in tempSU and the password is the word secret.

You should be taken to the back end, or Administrative side, of Joomla if you did the prior steps correctly.

Before doing anything else, go straight to Users -> User Manager and set up a new Super Administrator or change the password for an existing one. Note this information somewhere outside of your Joomla site.

Do not remove the temporary user account until you have logged out and logged back in with the permanent Super Administrator name that you just created.

Once you have logged back in, remove the temporarySuperUser account in Users - User Manager.

If all went well, you can close out of phpMyAdmin in the other browser tab.