I installed phpMyAdmin on my site and it works. But when I mistype a query it does not show the mysql error message only the error code.
1064 –
I expect the following:
1064 – You have and error in your blah blah…
Without an error message it’s difficult to know what’s wrong.
In my php scripts I’m able to get the error message via mysql_error(). But myAdmin shows nothing.
I googled a lot but I didn’t find anything useful.
How can I make it show the error messages?
Any ideas?
Judging by the fact that you get “#1064 -” as output, I can find only two places in the phpMyAdmin 3.3.9.2 source where the error could be occurring. The first is in the call to
mysql_errorormysqli_error, depending on which backend your installation is using. I see you said thatmysql_errorworks fine; if the phpMyAdmin information page you get when first logging in indicates that mysqli is being used, you might want to check that too.But if mysql_error works, it seems more likely that the problem is in phpMyAdmin’s character set conversion function
PMA_DBI_convert_messagein libraries/database_interface.lib.php. You can confirm this easily enough by insertingreturn $message;at the very top of that function, bypassing everything else in there. If that makes it (more or less) work, you’d probably want to determine what$server_languageand$GLOBALS['charset']are getting set to; see if the conversion is usingiconv,recode_string,libiconv, ormb_convert_encoding; and then try to work out why whichever of those is failing to convert the error message properly.