您好,我正在使用codeigniter进行文件上传,我正在使用以下代码
echo form_open_multipart('controller_a');
echo form_upload('userfile');
echo form_submit('Upload','upload');
echo form_close();我将指向上载文件的指针存储在数据库中,我的问题是如何确保用户在单击upload按钮之前选择了文件,因为到目前为止,即使用户直接单击upload而没有选择文件,代码也会提交
发布于 2011-10-17 02:49:30
除了客户端验证之外,您还应该使用服务器端验证。目前,CodeIgniter不提供函数,因此可以使用原生PHP函数is_uploaded_file
if (is_uploaded_file($_FILES['myfile']['tmp_name']))
{
$this->load->library('upload');
$this->upload->do_upload('myfile');
}发布于 2011-06-22 03:58:31
你不能,至少在CodeIgniter中不能。您需要让JS覆盖表单的onsubmit属性,然后测试userfile输入的值。
发布于 2011-06-22 04:03:47
使用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 ( );"当用户在没有选择任何文件的情况下点击upload按钮时,它会提醒用户。
https://stackoverflow.com/questions/6431199
复制相似问题