如何保存表单';s';文件';输入到磁盘


How to save a form's 'file' input to disk?

我从来没有做过这样的事情,我找不到一个像样的教程来教我如何做到这一点。。。

我有一个html表单如下:

<form class = "form-course-setup" id="form-course-add" action="" enctype="multipart/form-data">
<input type="file" name="syllabus" size="40"> 
</form>
$(document).ready(function(){
        $('#form-course-add').submit(function(event){
        event.preventDefault();
        $.get('../php/lecturer_addcourse.php',$(this).serialize(),
        function(data){
            if(data == true)
            {
               ...  
            }
});

在lecturer_adcourse.php 中

我想把教学大纲附件保存到远程服务器(稍后下载)。。。

我该怎么做?

PS:如果这不是堆栈溢出类型的问题,请让我知道,我很乐意删除这篇文章:)

由于过时的安全模型,浏览器从不允许javascript读取文件。最新的浏览器现在可以做到这一点,但只能通过FileReader API。如果你想自己做这件事,那需要几天的时间。或者,您可以找到第三方库,如"FineUploader"。

更容易的是完全删除您的javascript并执行<form action="../php/lecturer_addcourse.php" ...>

此外,请确保您的php脚本不允许任何人上传php脚本。很多服务器都会因为犯了这个错误而被黑客入侵。