Roundcube Community Forum
News and Announcements => General Discussion => Topic started by: vandenbergen on November 02, 2009, 10:06:08 AM
-
I have stille an ENCODING Error:
PHP Error: Could not convert string from UTF7-IMAP to UTF-8. Make sure iconv/mbstring is installed or lib/utf8.class is available. in P:\ServerData\Hosts\webmail.hcs.at\html\program\include\main.inc on line 279 (GET /?_task=mail&_action=check-recent&_t=1257173884499&_list=1&_remote=1&_=1257173884504&_unlock=1)
PHP Error: Could not convert string from UTF7-IMAP to UTF-8. Make sure iconv/mbstring is installed or lib/utf8.class is available. in P:\ServerData\Hosts\webmail.hcs.at\html\program\include\main.inc on line 279 (GET /?_task=mail&_action=check-recent&_t=1257173944497&_list=1&_remote=1&_=1257173944501&_unlock=1)
iconv/mbstring are installed.
I also tried to incluede manual the utf8.class.php in \programm\include\main.inc
// fallback if not PHP modules are available
@include_once('lib/des.inc');
include_once('lib/utf8.class.php');
--> no effect.
iconv
iconv support enabled
iconv implementation "libiconv"
iconv library version 1.9
Directive Local Value Master Value
iconv.input_encoding ISO-8859-1 ISO-8859-1
iconv.internal_encoding ISO-8859-1 ISO-8859-1
iconv.output_encoding ISO-8859-1 ISO-8859-1
mbstring
Multibyte Support enabled
Multibyte string engine libmbfl
Multibyte (japanese) regex support enabled
Multibyte regex (oniguruma) version 4.4.4
Multibyte regex (oniguruma) backtrack check On
mbstring extension makes use of "streamable kanji code filter and converter", which is distributed under the GNU Lesser General Public License version 2.1.
Directive Local Value Master Value
mbstring.detect_order no value no value
mbstring.encoding_translation Off Off
mbstring.func_overload 0 0
mbstring.http_input pass pass
mbstring.http_output pass pass
mbstring.internal_encoding no value no value
mbstring.language neutral neutral
mbstring.strict_detection Off Off
mbstring.substitute_character no value no value
I use PHP 5.2.3
System Windows NT WEBACT01 5.2 build 3790
Build Date May 31 2007 09:36:39
Configure Command cscript /nologo configure.js "--enable-snapshot-build" "--with-gd=shared"
Server API Apache 2.0 Handler
-
I have the exact same problem.
Running Ubuntu 9.10 and lighttpd/php5
Tried to force load of the utf8 class file from main.inc.
But no result.
-
This problem seems to be related with the location of the files in .mailboxlist
when i used mail/ as basedir it works and when i use no basedir i get this error.
Default mailfolders (container files specified per default in the conf file) gets created like they should but clicking on the folders tab in settings doesn't work and produces this errormessage.
-
Hmm. And apparently it's only for a single user. All the other users works like a charm. Sigh.
-
I'm having the same issue, only for one user. Also after the user has viewed one or two email messages, (s)he gets logged off and dropped back to the login screen.
For the record we use no root directory cause we have some shared folders.
Debian Lenny etc.
-
Anyone?...
-
[01-Dec-2009 12:00:24 +0200]: PHP Error: Could not convert string from UTF7-IMAP to UTF-8. Make sure iconv/mbstring is installed or lib/utf8.class is available. in /var/www/webmail/program/include/main.inc on line 279 (GET /?_task=mail&_action=check-recent&_t=1259661627053&_list=1&_quota=1&_remote=1&_=1259661627053&_unlock=1)
any idea?
offcource mbstring is installed.
-
We are also seeing this error. We are running v0.2.2 in production, and I'm testing v0.3.1. I do see the error message changed from "UTF-7" in v0.2.2 to "UTF7-IMAP" in v0.3.1.
We would sure appreciate an explanation of this!
Thanks much,
Jackie
-
I'm having the same issue. And apparently it's only for a single user:
PHP Error in /usr/hosting/u1/www/sbconsult/html/mail/program/include/main.inc (279):
Could not convert string from WIN-1251 to UTF-8. Make sure iconv/mbstring is installed or lib/utf8.class is available.
iconv and mbstring is installed and work well.
I am just commented in program\include\main.inc strings 225-250:
/*
// convert charset using bundled classes/functions
if ($to == 'UTF-8') {
if ($from == 'UTF7-IMAP') {
if ($_str = utf7_to_utf8($str))
return $_str;
}
else if ($from == 'UTF-7') {
if ($_str = rcube_utf7_to_utf8($str))
return $_str;
}
else if (($from == 'ISO-8859-1') && function_exists('utf8_encode')) {
return utf8_encode($str);
}
else if (class_exists('utf8')) {
if (!$conv)
$conv = new utf8($from);
else
$conv->loadCharset($from);
if($_str = $conv->strToUtf8($str))
return $_str;
}
$error = true;
}
*/
and everything was working fine!
Excuse me for my bad english!
Hello from Russia ;)
-
These warnings appears in logs when mbstring nor iconv nor internal Roundcube converter:
1. doesn't support specified encoding or
2. text for conversion contains characters forbidden in specified encoding or
3. of course there could be a bug in Roundcube.
So, to be sure, you could modify rcube_charset_convert() to log also converted text. It's in $str variable.
-
Alec,
THANK YOU so much for your post! I've been struggling with this issue for months, and I took your suggestion of printing out the $str in the error message. I'm seeing the character '&' is causing the problem when it is in $str. Finally, I know what is causing it, not sure how to solve it.
Jackie
-
I've been looking into this a bit more. I see the error generated when I bring up my list of folders. The folders are all the files in my home directory on a UNIX system. Some of those file names have an "&" character in them, and that is what generates the error.
I've done a bit of code tracing, and I see that iconv is being called, and mbstring is being called, and then the routine utf7_to_utf8 is called to do the conversion in the file ~program/lib/utf7.inc. The routine utf7_to_utf8 does some special handling of the "&" character, and is returning an error.
I'm trying to figure out where the problem lies. Is it in the assumption that the folder list is in UTF7-IMAP? It should be ascii I would think. From what I've read it sounds like UTF7 and UTF8 are similar, so why the special treatment of "&"? Any clarification on this would be greatly appreciated. It sounds like this is a common error for RoundCube users, and it'd be nice to get it resolved.
Thanks so much!
Jackie
-
RFC3501, 5.1.3. Could you please show that folder (unix) name?
-
It can be any file name with an "&" in it. One of our users has a file/folder called "R&R" and that generates the error.
Thanks,
Jackie
-
I had the same problem. Maybe I have a solution: I looked at utf7_to_utf8 function in utf7.inc file and its behaviour looks like very similar to the standard php function imap_to_utf8.
So what I did it's a simple substitution of the function and it seems to work well.
I would have a confirm from roundcube author, but I think he is really busy.
Anyway if someone could post his experience with this change it will be very nice.
Sorry for my english!
-
There's no imap_to_utf8 function. You could use probably imap_utf7_encode/decode function but they doesn't work with UTF8. If you have a similiar problem, please enable imap_debug and show as what returns your IMAP server for LIST/LSUB commands (see logs/imap file).
-
I had same problem, but I solved it. Check your charset in database roundcube. You have to have in UTF8!!!! If you donĀ“t use UTF8 you have to re-create db in UTF8