Forms Drupal7表单API:文件上传
我一直遵循Drupal文档中的表单示例10: 我的表格的定义如下:Forms Drupal7表单API:文件上传,forms,file,drupal,file-upload,drupal-7,Forms,File,Drupal,File Upload,Drupal 7,我一直遵循Drupal文档中的表单示例10: 我的表格的定义如下: function portal_upload_form($form, $form_state) { $form['file'] = array( '#type' => 'file', '#title' => t('Choose a file'), ); $form['document_submit_button'] = array( '#ty
function portal_upload_form($form, $form_state) {
$form['file'] = array(
'#type' => 'file',
'#title' => t('Choose a file'),
);
$form['document_submit_button'] = array(
'#type' => 'submit',
'#value' => t('upload'),
);
return $form;
}
以及表格(u submit hook):
function portal_upload_form_submit($form, &$form_state) {
$file = $form_state['values']['file'];
// ...
$file为“空”,尽管已将输入文件设置为777权限。我错过了一些东西,自己找不到什么
谢谢!
J.没有回答为什么表单没有提供文件/url/…的问题。。。但它解决了整个上传问题:
function portal_upload_form_submit($form, &$form_state) {
$file = $form_state['values']['file'];
$validators = array();
$file = file_save_upload('file', $validators, 'public://');
这里有一些其他的事情要考虑:
“#name”=>“files[img_1]”,
,有关第二点的信息,请参见第一条注释。您所说的“设置了777权限的输入文件”是什么意思。这些权限设置在哪里?如果它们在您的本地pc中,这是不相关的,因为服务器没有直接从您的pc读取。您好,我用于测试的文件在本地文件系统上确实具有777权限。如果浏览器需要访问该文件(只读),那么至少有读取权限会让人觉得有用:)是的,它确实有帮助