form.inc.php 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. function box($field, $value, $fieldinfo) {
  2. $setting = string2array($fieldinfo['setting']);
  3. if($value=='') $value = $this->fields[$field]['defaultvalue'];
  4. $options = explode("\n",$this->fields[$field]['options']);
  5. foreach($options as $_k) {
  6. $v = explode("|",$_k);
  7. $k = trim($v[1]);
  8. $option[$k] = $v[0];
  9. }
  10. $values = explode(',',$value);
  11. $value = array();
  12. foreach($values as $_k) {
  13. if($_k != '') $value[] = $_k;
  14. }
  15. $value = implode(',',$value);
  16. switch($this->fields[$field]['boxtype']) {
  17. case 'radio':
  18. $string = form::radio($option,$value,"name='info[$field]' $fieldinfo[formattribute]",$setting['width'],$field);
  19. break;
  20. case 'checkbox':
  21. $string = form::checkbox($option,$value,"name='info[$field][]' $fieldinfo[formattribute]",1,$setting['width'],$field);
  22. break;
  23. case 'select':
  24. $string = form::select($option,$value,"name='info[$field]' id='$field' $fieldinfo[formattribute]");
  25. break;
  26. case 'multiple':
  27. $string = form::select($option,$value,"name='info[$field][]' id='$field ' size=2 multiple='multiple' style='height:60px;' $fieldinfo[formattribute]");
  28. break;
  29. }
  30. return $string;
  31. }