微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

上传前如何确保选择了文件

如何解决上传前如何确保选择了文件

| 嗨,我正在使用codeigniter进行文件上传,并且正在使用此代码
echo form_open_multipart(\'controller_a\');
echo form_upload(\'userfile\');
echo form_submit(\'Upload\',\'upload\');
echo form_close();
我将指向上传文件的指针存储在数据库中, 我的问题是,如何确保用户在单击“上传”按钮之前已经选择了一个文件,因为到目前为止,即使用户直接单击上传而未选择文件,该代码仍会提交     

解决方法

        与客户端验证一起,您也应该使用服务器端验证。当前,CodeIgniter不提供一项功能,因此可以使用本机PHP函数
is_uploaded_file
if (is_uploaded_file($_FILES[\'myfile\'][\'tmp_name\']))
{
    $this->load->library(\'upload\');

    $this->upload->do_upload(\'myfile\');
}
    ,        您不能,至少不在CodeIgniter中。您需要让JS覆盖表单的onsubmit属性,然后测试用户文件输入的值。     ,        使用JS 非常基本的代码,但是可以。
<script type=\"text/javascript\">

<!--

function validate_form ( )
{
    valid = true;

        if ( document.upload_form.something.value == \"\" )
        {
                alert ( \"Please select a file before clicking upload ! \" );
                valid = false;
        }

        return valid;
}

//-->

</script>
甚至使用以下形式使用onsubmit
onSubmit=\"return validate_form ( );\"
当用户单击上载按钮而不选择任何文件时,它将提醒用户。     ,        最好的选择是使用jQuery插件,如下所示: http://bassistance.de/jquery-plugins/jquery-plugin-validation/ 这将允许您选择需要选择的输入值,并自定义一条消息以通知用户缺少的输入字段。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。