Hey guys,
i ran into serious trouble when facing the problem to convert data, which was retrieved from a single form in our CMS to match the requirements of multiple charsets.
Our CMS uses UTF-8 which worked out quite fine to display the data but caused weired symbols when displayed within a TEXTAREA or INPUT field. So i tried to convert all characters beyound A-Z,0-9 to HTML entities which worked out even better ( i used the following functions to convert the data :
function func_ConvertToHTML ( $string ) {
$strlen = strlen ( $string ) ;
$return = '' ; for ( $str_pos = 0 ; $str_pos < $strlen ; $str_pos++ ) {
$char = substr ( $string , $str_pos , 1 );
$ascii = ord ( $char ); if ( $ascii >> 5 == 6 ) {
$char2 = substr ( $string , ++$str_pos , 1 );
$ascii2 = ord ($char2); $ascii &= 31 ;
$ascii2 &= 63 ;
$ascii2 |= ( ($ascii & 3 ) << 6 ) ;
$ascii >>= 2 ;$return .= '&#x' . str_pad ( dechex( $ascii ) , 2 , '0' , STR_PAD_LEFT ) . str_pad ( dechex( $ascii2 ) , 2 , '0' , STR_PAD_LEFT ) . ';' ;
} else {
$return .= $char;
}
}
return $return; }
But at this point i faced even bigger problems when using this kind of data on JavaScripts or sending the data in an text/plain E-Mail. I tryed to convert the data back but failed as chr() only supports a Charset of 255 Characters ( which most languages don't match eg ru, pl, ch, jp ... )
So my question is if anyone on this list has an idea on how to retrieve the data completely? Some kind of func_ConvertFromHTML() function.
-- red
-- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php

