2013-02-20 49 views
1

我似乎无法保存使用FAPI上传的图像文件。Drupal 7,使用managed_file永久上传和保存图像

上传图像作为管理的文件,我需要永久保存他们,但他们总是用1

任何想法,我做错了状态保存在数据库中?谢谢,

// FAPI

$form['fieldset_3']['pic_3'] = array(
'#type' => 'managed_file', 
'#title' => t('Image'), 
'#required' => TRUE, 
'#default_value' => variable_get('pic_3'),  
'#description' => t('Allowed extensions: gif png jpg jpeg.'), 
'#upload_validators' => array(
'file_validate_extensions' => array('gif png jpg jpeg'), 
'file_validate_size' => array('MAX_FILE_SIZE' * 1200 * 300), 
), 
'#theme' => 'image_multifield_multitype', 
'#upload_location' => 'public://carousel', 
); 

//在提交功能

$file = file_load($form_state['fieldset_1']['pic_1']); 
$file = file_save_upload($file->uri,$validators, 'public://carousel/' . $file->filename, FILE_EXISTS_REPLACE); 
$file->status = FILE_STATUS_PERMANENT; 
file_save($file); 
+0

FWIW,在我的情况'file_save_upload'失败了,当我通过它'$ file-> uri'如上。我必须使用表单元素的名称(在OP的示例中,它将是“pic_1”)。 – doub1ejack 2013-05-21 14:05:53

+0

“我需要永久保存它们,但它们始终保存在状态为1的数据库中。”我不明白。是不是'永久'的正确状态? – Randell 2013-11-06 03:53:20

+0

是的,那是一个错字,我的意思是0 – rix 2013-11-10 14:33:43

回答

1

被提交处理程序不会被调用我的坏,问题...