fixed array type value save error

git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.0@9983 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
devjin 2011-12-22 10:18:37 +00:00
parent 8db1be04bf
commit fdc99d41f1
2 changed files with 19 additions and 6 deletions

View file

@ -199,9 +199,9 @@
// Phone Number
case 'tel' :
$buff .=
'<input type="text" name="'.$column_name.'" value="'.$value[0].'" size="4" class="tel" />'.
'<input type="text" name="'.$column_name.'" value="'.$value[1].'" size="4" class="tel" />'.
'<input type="text" name="'.$column_name.'" value="'.$value[2].'" size="4" class="tel" />';
'<input type="text" name="'.$column_name.'[]" value="'.$value[0].'" size="4" class="tel" />'.
'<input type="text" name="'.$column_name.'[]" value="'.$value[1].'" size="4" class="tel" />'.
'<input type="text" name="'.$column_name.'[]" value="'.$value[2].'" size="4" class="tel" />';
break;
// textarea
@ -218,7 +218,7 @@
// Temporary ID for labeling
$tmp_id = $column_name.'-'.$id_num++;
$buff .='<li><input type="checkbox" name="'.$column_name.'" id="'.$tmp_id.'" value="'.htmlspecialchars($v).'" '.$checked.' /><label for="'.$tmp_id.'">'.$v.'</label></li>';
$buff .='<li><input type="checkbox" name="'.$column_name.'[]" id="'.$tmp_id.'" value="'.htmlspecialchars($v).'" '.$checked.' /><label for="'.$tmp_id.'">'.$v.'</label></li>';
}
$buff .= '</ul>';
break;

View file

@ -213,9 +213,16 @@ class documentController extends document {
if(count($extra_keys)) {
foreach($extra_keys as $idx => $extra_item) {
$value = '';
if(isset($obj->{'extra_vars'.$idx})) $value = trim($obj->{'extra_vars'.$idx});
if(isset($obj->{'extra_vars'.$idx})){
$tmp = $obj->{'extra_vars'.$idx};
if (is_array($tmp))
$value = implode('|@|', $tmp);
else
$value = trim($tmp);
}
elseif(isset($obj->{$extra_item->name})) $value = trim($obj->{$extra_item->name});
if(!isset($value)) continue;
$this->insertDocumentExtraVar($obj->module_srl, $obj->document_srl, $idx, $value, $extra_item->eid);
}
}
@ -372,7 +379,13 @@ class documentController extends document {
if(count($extra_keys)) {
foreach($extra_keys as $idx => $extra_item) {
$value = '';
if(isset($obj->{'extra_vars'.$idx})) $value = trim($obj->{'extra_vars'.$idx});
if(isset($obj->{'extra_vars'.$idx})){
$tmp = $obj->{'extra_vars'.$idx};
if (is_array($tmp))
$value = implode('|@|', $tmp);
else
$value = trim($tmp);
}
elseif(isset($obj->{$extra_item->name})) $value = trim($obj->{$extra_item->name});
if(!isset($value)) continue;
$this->insertDocumentExtraVar($obj->module_srl, $obj->document_srl, $idx, $value, $extra_item->eid);