Saya ingin mengunggah file dan saya harus menggunakan tipe elemen formulir sebagai 'file'. Dalam fungsi kirim, saya tidak bisa mendapatkan data yang benar terkait dengan file yang saya unggah. SO Adakah yang bisa membantu saya untuk menyelesaikan ini. Silakan temukan kode di bawah ini:
public function buildForm(array $form, FormStateInterface $form_state) {
$form['test_CERTIFICATE'] = [
'#type' => 'file',
'#title' => $this->t('Certificate'),
'#description' => $this->t('Your Certificate (.pem file)').': '.\Drupal::state()->get('test_CERTIFICATE_NAME'),
];
return parent::buildForm($form, $form_state);
}
Kirim fungsi:
public function submitForm(array &$form, FormStateInterface $form_state) {
parent::submitForm($form, $form_state);
$validators = array('file_validate_extensions' => array('pem'));
$files = file_save_upload('test_CERTIFICATE', $validators, 'public://certfiles', FILE_EXISTS_REPLACE);
$file = File::load($files[0]);
if($file) {
kint($files); exit;
//here control is not coming
$file->setPermanent();
$file->save();
}
}
Lihat repositori github untuk formulir kustom dengan unggahan file. github.com/nitin-kawane/…
—
Nitin