Fix : issue when using unicode with substr

This commit is contained in:
sparkyx 2026-02-26 08:42:35 +01:00
parent 545e41927b
commit 9347b18fa9
5 changed files with 6 additions and 5 deletions

View file

@ -564,7 +564,7 @@ switch ($action) {
break;
case 'note_refresh':
$acc_operation_note= Acc_Operation_Note::build_jrn_id($jr_id);
echo substr($acc_operation_note->getNote()??"",0,120);
echo mb_substr($acc_operation_note->getNote()??"",0,120);
return;
case "rmsup":

View file

@ -984,7 +984,7 @@ print $html;
// Note
$r.='<td>';
$r.='<span id="als_note'.$row['jr_id'].'" class="font-small">';
$r.= substr($row['n_text']??"",0,120);
$r.= mb_substr($row['n_text']??"",0,120);
$r.='<span>';
$r.='</span>';
$r.='</td>';

View file

@ -528,14 +528,14 @@ class Fiche
if ( $p_array["av_text".ATTR_DEF_QUICKCODE] =="")
{
if ( ! empty( $p_array['av_text'. ATTR_DEF_ACCOUNT])) {
$base_acc=substr($p_array['av_text'. ATTR_DEF_ACCOUNT]??"",0, 3);
$base_acc=mb_substr($p_array['av_text'. ATTR_DEF_ACCOUNT]??"",0, 3);
}else {
$base_acc=$this->cn->get_value("select substr(fd_class_base,1,2) from fiche_def where fd_id = $1",
[$p_fiche_def]);
}
$p_array["av_text".ATTR_DEF_QUICKCODE]=sprintf("%s%s"
, $base_acc
, substr($p_array["av_text".ATTR_DEF_NAME], 0, 4)
, mb_substr($p_array["av_text".ATTR_DEF_NAME], 0, 4)
);
}
$sql=sprintf("select insert_quick_code(%d,'%s')", $fiche_id,

View file

@ -62,7 +62,7 @@ global $g_parameter;
$i = 0;
foreach ($avail as $r) {
$array[$i]['value'] = $r['dos_id'];
$array[$i]['label'] = sprintf("%s %s (%s)",$r['dos_id'],$r['dos_name'],substr($r['dos_description']??"",0,50));
$array[$i]['label'] = sprintf("%s %s (%s)",$r['dos_id'],$r['dos_name'],mb_substr($r['dos_description']??"",0,50));
$i++;
}
$sAvail = new ISelect('dos_id');