正在将上载的图像名称获取到数据库中


Getting Uploaded Image Name into a Database

我正在使用这个图像上传器:

http://www.jotform.org/jquery/ajax-multi-file-upload-with-progress-bar/#more-291

它是jQuery/Ajax,虽然我使用它,但我对这两种语言都知之甚少。我想修改它,以便将所有上传文件的文件名放入数据库。

包含的upload.php文件似乎不起作用,因为我已经删除了它,并且上传器仍在运行。如果需要的话,我可以很容易地编写所需的PHP来完成这项工作。

一个解决方案是在上传完成后执行PHP文件,我该怎么做?

感谢您的帮助。

<form id="upload" method="post" action="upload.php" enctype="multipart/form-data">
        <div id="drop">
            Drop Here
            <a>Browse</a>
            <input type="file" name="upl" multiple />
        </div>
        <ul>
            <!-- The file uploads will be shown here -->
        </ul>
    </form>

上面编辑过-这是上传使用的表单,不管怎样,我都可以使用"isset"来检查它是否已被使用,但没有提交按钮。

上面的代码是我在带有上传器的页面上看到的,它似乎并没有真正调用upload.php文件。

我以前从未使用过这个文件上传器。不过看了之后,upload.php负责处理上传后的文件。

如果你看这个脚本:

if(move_uploaded_file($_FILES['upl']['tmp_name'], 'uploads/'.$_FILES['upl']['name'])){
    echo '{"status":"success"}';
    exit;
}

您可以看到,成功上传后,它会将文件移动到包含的uploads目录中。此时,您可以扩展此脚本并将$_FILES['upl']['name']保存到数据库中。您可能需要查看可能的PHP数据库扩展

$('#upload').fileupload({
    // This element will accept file drag/drop uploading
    dropZone: $('#drop'),
    // This function is called when a file is added to the queue;
    {***SNIP***}
        });
        // Automatically upload the file once it is added to the queue
        var jqXHR = data.submit();
    },

倒数第二行var jqXHR = data.submit();是它提交表单的时候。这是它的AJAX部分。由于你删除了upload.php文件,它实际上给出了404。然而,代码写得很糟糕,似乎并没有提醒你它无法访问所述文件。

尽管如此,upload.php正在被调用,并且正在被使用。正如上面的其他人建议的那样,你可以扩展它来获得你需要的上传文件的任何细节。(实际上,我会把任何逻辑放在echo之前。echo是告诉JavaScript一切都很好的东西。)