私はDrupal 7とファイルのアップロードに問題があります。動作しませんフォームでDrupal 7にファイルをアップロードするには?
マイコード:
function test_form($form, &$form_state){
$form['#attributes'] = array('enctype' => "multipart/form-data");
$form['podcast'] = array(
'#title' => 'Audio file',
'#type' => 'file',
);
$form['submit'] = array(
'#type' => 'submit',
'#value' => t('Save'),
);
return $form;
}
function test_form_submit($form, &$form_state){
$vals = $form_state['values'];
$filepath = 'public://test/';
//$filepath = 'temporary://test/';
$filename = 'rcc_date.mp3';
file_prepare_directory($filepath, FILE_CREATE_DIRECTORY);
$file = file_save_upload('podcast', array('file_validate_extensions' => array()), $filepath.$filename);
//got FALSE here. Why?
die(print_r($file===FALSE).'-');
}
だから、パス作成されますが、ファイルはありませんアップロードを行い、file_save_uploadはFALSEを返します。また、arrayValue()とtrueを$バリデータとして試してみました。
大変助かりました。ありがとう。
ファイル名を動的に取得するにはどうすればよいですか? – Hitesh
このコードでは、ファイル名は完全に不要です。それを完全に残しなさい。 $ filename変数を設定せず、$ filepathに追加しないでください。 – Magmatic
array( 'file_validate_extensions' => array())のように、ファイルバリデータの空の配列を使用するには、安全ではないので使用しないでください。代わりにNULLを使用して、デフォルトを使用するか、実際のリストを自分で作成します。 – Magmatic