I'm new to this and had the above problems even after following the posted solutions, but found that in my case an extra change to config.inc.php was needed. I believe that the issue only arises if you have more than one server defined, hence why the solutions above work for some, but not others.
If I understand correctly $i is an index to an array of server information and is intialised as below;
* Servers configuration $i = 0;
Then for each server it's incremented by a line containing, $i++;
In my case I have 2 servers, localhost, and a test server.
So for localhost $i = 1, and for the test server $i = 2.
The lines added to the ini file for configuration storage come after the lines for the servers so at this point $i is still 2, but I want it set up for localhost, not my testserver.
So I added $i = 1 as shown below.
* phpMyAdmin configuration storage settings. */ $i = 1;
This worked for me, I hope it helps others.