Reputation: 11
I've read here and various other links, but I cannot trace the issue... I've just installed Apache24, PHP5, Mysql, (which I've done several times before over the years) and phMyAdmin just didn't work "out of the box" this time.
My info.php reveals mysql is loaded fine. My apache server seems to be running ok and serves pages. But I cannot trace the source of the issue.
I'm on Windows 7... Would really appreciate some pointers... Many thanks.
Exact error : Fatal error: Call to undefined function __() in C:\Apache24\htdocs\phpmyadmin\libraries\core.lib.php on line 229
Call stack - not sure how to generate this...
Lines of code around the issue with line 229 labelled:
function PMA_fatalError(
$error_message, $message_args = null, $delete_session = true
) {
/* Use format string if applicable */
if (is_string($message_args)) {
$error_message = sprintf($error_message, $message_args);
} elseif (is_array($message_args)) {
$error_message = vsprintf($error_message, $message_args);
}
if ($GLOBALS['is_ajax_request']) {
$response = PMA_Response::getInstance();
$response->isSuccess(false);
$response->addJSON('message', PMA_Message::error($error_message));
} else {
$error_message = strtr($error_message, array('<br />' => '[br]'));
/* Load gettext for fatal errors */
if (!function_exists('__')) {
include_once GETTEXT_INC;
}
// these variables are used in the included file libraries/error.inc.php
$error_header = __('Error'); /* Line 229 */
$lang = $GLOBALS['available_languages'][$GLOBALS['lang']][1];
$dir = $GLOBALS['text_dir'];
// on fatal errors it cannot hurt to always delete the current session
if ($delete_session
&& isset($GLOBALS['session_name'])
&& isset($_COOKIE[$GLOBALS['session_name']])
) {
$GLOBALS['PMA_Config']->removeCookie($GLOBALS['session_name']);
}
// Displays the error message
include './libraries/error.inc.php';
}
if (! defined('TESTSUITE')) {
exit;
}
}
/**
Upvotes: 1
Views: 4783
Reputation: 4451
I had this problem on Windows. Do the following:
Close Apache httpd (or whichever server you run)
Open php.ini file. If uou don't have one, copy-paste from php.ini-production or php.ini-development
Uncomment the lines "extension=php_mbstring.dll" and "extension=php_mysqli.dll"
Insert the line "extension_dir = full_path_to_your_ext_folder". You need to point to the ext subfolder of your php installation, where the dll files specified above are located
Save and restart the web server
Upvotes: 0
Reputation: 38
I also researched here and other links to no avail. I finally determined that the PHP5 JSON module was not installed. You'll have to determine how to install it for your platform. It should show up in your phpinfo listing as JSON support enabled.
Upvotes: 0
Reputation: 12462
Check that your session directory is writable by the webserver process.
The best way to do so is to create your own phpinfo file; in any web accessible folder create a file (you can call it test.php or phpinfo.php or whatever you'd like) with the following content:
<?php
phpinfo();
?>
Open that file in your browser (http://localhost/test.php
or similar) and look for the line session.save_path
. That's your session folder; make sure the permissions are suitable and see if that helps.
Upvotes: 0