When the problem can be reproduced. The mbstring errors can occur if you are on concrete 5.2 and do one of the following:
– add blocks in page editing mode (Fatal Error: Call to undefined function mb_detect_encoding() in);
– execute search engine index routine;
– in ‘Add functionality’ when concrete5 tries to connect marketplace;
– maybe in other cases when mbstring functions are used.
If you are on hosting. First, you should know what hosting account you have. If you are on dedicated or VDS (virtual dedicated server), then the problem can be resolved by installing mbstring extension for php, see Windows server or Unix server section below depending on what kind of server system is used on your concrete5 hosting.
If you are on shared hosting, you should check if you can edit php.ini. Run a simple script called phpinfo.php with the following code:
<?php
phpinfo();
?>
There find php.ini path (configuration file path). It’s usually not editable for you.
Create a simple php.ini file (may be even empty) and upload to your root web directory where the phpinfo.php file is. Run the phpinfo.php script again and take a look if configuration file path changed. If changed, it means you can continue trying to fix the mbstring problem. If not, you should likely to change your hosting provider or contact their support.
If you are on windows. Find the following line in php.ini
;extension=php_mbstring.dll
Remove semicolon to uncomment and try concrete5 again. Most probably you will need to download php_mbstring.dll (for your php version) and upload to extension dir.
If you are on Unix server, instruction is quiet the same but the extension will have the php_mbstring.so filename.
If you are a server admin, you can recompile php with –enable-mbstring configure option. See more details here:
http://php.net/manual/en/mbstring.installation.php