2017-08-06 55 views
0

我有一个page.php我加载一个.csv文件,读取它并最终将这些值上传到数据库中。我想要做的是,一旦文件被加载到我的表单中,并且我已经阅读它,首先检查我的数据库是否仍有空间,如果没有剩余空间,我会打印一条消息没有剩余空间,你想上传吗?我可以得到这一点,但我不知道如何将已经加载到我的表单的文件,通过发布表单或任何其他方法发送到同一页面。通过一个POST表单传递一个文件

这里是我读文件,当我把它上传

$file = $_FILES['file']['tmp_name']; 

但如果我试图通过在新的岗位形式的隐藏字段发送$文件变量,这是行不通的。

+0

完整代码在哪里? –

+0

我希望你不想在表单标签中添加'enctype = multipart/form-data' –

+0

不,我没有,第一次从我的电脑中选择文件时加载文件,但第二次,当我尝试通过它隐藏的价值,不工作,因为我可以在这里阅读,出于安全原因不能这样做.. – alexcr

回答

0

由于安全原因,您无法通过隐藏输入发送文件。我会推荐的是当您第一次阅读时将上传的文件保存在服务器上。然后,如果用户单击anyway,则将此保存的文件作为第二次迭代的输入。

0

它不能重新填充字段输入。

所以,你可以

1)使用AJAX来检查是否有足够的空间和演出消息,如果没有剩余空间

2)存储数据从文件中Web服务器上的文件,并以html格式将其存储在隐藏字段中,并在第二次提交后使用存储的文件。

+0

如何使用ajax检查并最终进行插入?比方说,我把插入查询放在一个名为insert()的函数中,我该如何用ajax做检查并最终调用该函数? – alexcr

+0

ajax的优点是您无需重新填充表单,因为您使用的是相同的html表单。而不是正常提交​​您发送ajax提交所有表单数据。您好 - 您将用户重定向到另一个页面或重新加载此页面。如果错误没有剩余空间 - 您将显示此错误并等待用户决定。 –

+0

问题是我对ajax并不熟悉,但据我所知可以从您的评论中读取,对我的问题来说是正确的解决方案。 – alexcr

相关问题