Bug #40664 [Com]: String conversion functions wrong for multibyte chars

From: Date: Sun, 01 Aug 2010 15:45:49 +0000
Subject: Bug #40664 [Com]: String conversion functions wrong for multibyte chars
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-153014@lists.php.net to get a copy of this message
Edit report at http://bugs.php.net/bug.php?id=40664&edit=1 ID: 40664 Comment by: ivars_ju at inbox dot lv Reported by: fjortiz at comunet dot es Summary: String conversion functions wrong for multibyte chars Status: Assigned Type: Bug Package: COM related Operating System: Win32 PHP Version: 5.2.1 Assigned To: pajoye Block user comment: N New Comment: Hi, i still have this bug in PHP Version 5.3.3 Is it so hard to commit this? Previous Comments: ------------------------------------------------------------------------ [2009-10-20 10:50:13] pajoye@php.net taking the hand on this one. ------------------------------------------------------------------------ [2009-10-20 10:36:01] fjortiz at comunet dot es after 2,5 years, can someone just commit the patch I provided to cvs?. It's annoying to recompile any PHP version that comes out just for the sake of this nonsense. Take into account that any use of PHP+COM+multibyte stuff fails without this silly fix. Thank you. ------------------------------------------------------------------------ [2009-03-22 10:12:22] j dot novak at netsystem dot cz I see same problem with ADODB.Connection and it's parameters. When I use: // init connection to DB $dbc = new COM('ADODB.Connection',null,CP_UTF8); $dbc->Open("PROVIDER=MSDASQL;Driver={SQL Server};Server=192.168.210.1;Database=test;UID=test;PWD=test"); // create command $oCmd = new COM('ADODB.Command',null,CP_UTF8); $oCmd->ActiveConnection = $dbc; // // Table test1 has one row c1 of type nvarchar(200) $oCmd->CommandText = "INSERT INTO test1(c1) VALUES (?)"; $oCmd->CommandType = 1; // Some UTF-8 string (length in characters is 15, 24 in bytes) $val='ABCříšúěďáéóXYZ'; $len=strlen($val); $p=$oCmd->CreateParameter('name',202,1,$len,$val); $oCmd->Parameters->Append($p); $oCmd->Execute(); // ADODB sends to DB nvarchar(24) which is length of string // in bytes not characters, but data has 15 characters // in UCS-2. So in database there is correct string, but there is // some garbage after end of string ------------------------------------------------------------------------ [2008-10-22 14:05:22] vincent at eal dot com Any update on this bug? I still have the problem with PHP 5.2.3 and the changelog does not indicate any fix in 5.2.6. It is very annoying to have a nice patch standing there still with no one to commit it to CVS. ------------------------------------------------------------------------ [2007-08-15 08:36:07] jani@php.net Assigned to the maintainer. ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/bug.php?id=40664 -- Edit this bug report at http://bugs.php.net/bug.php?id=40664&edit=1

« previous php.bugs (#153014) next »