I've already looked into this but since I am running on Ubuntu 10.04 instead of XAMPP and have already created the phpmyadmin database and I can log in through terminal with both the root and phpmyadmin users.
How I installed: sudo apt-get install lamp-server^ sudo apt-get install phpmyadmin
I can login locally on terminal using both the root and phpmyadmin users. I can view the phpmyadmin login page. A phpinfo.php page I posted to server works.
Since you're able to log on as the controluser at the terminal, it's most likely that your configuration file doesn't contain the proper username or password for the controluser.
Open up config.inc.php
in your text editor and look at the controluser and controlpass lines -- make sure they match exactly what username and password you're successfully using. Try commenting out those two lines completely to see if you get a different error message.
If you've used the package manager to install, note that the configuration files are spread about in /etc/phpmyadmin
and if you manually added those lines, they might be overwritten by another configuration file. Try grep -Ri controluser /etc/phpmyadmin/*
to see if that appears in more than one file.
Since you've used the package manager, you should let it handle configuring the database. Try removing any edits you've made to the configuration files and running dpkg-reconfigure -plow phpmyadmin
(this is a shell command to run at the command prompt); this will reconfigure the phpmyadmin package and will ask if you want to allow dbconfig-common to create the phpMyAdmin tables for you as well as the controluser.