结合jQuery文件上传和表单到mysql

Posted

技术标签:

【中文标题】结合jQuery文件上传和表单到mysql【英文标题】:Combining jQuery file upload with form to mysql 【发布时间】:2015-08-15 07:09:31 【问题描述】:

我有一个将文本字段存储到数据库的表单。对于图片上传,我使用的是 Blueimp jQuery 文件上传。

我正在寻找一种组合这些的好方法,因此我可以将图像 URL 存储到我的数据库中的一个字段中。

jquery 变量 file.url 为我提供了上传文件的 URL(如果另一个图像与上传文件同名,则在重命名后。

var link = $('<a>')
.attr('target', '_blank')
.prop('href', file.url);
console.log(file.url); // gives: http://localhost/uploads/image.jpg

我能否以某种方式将此 URL 发送到表单中的隐藏输入字段?我知道在提交表单之前必须上传图像,否则jQuery变量为空。

有什么建议吗?

【问题讨论】:

【参考方案1】:

我建议您分步执行此操作。首先,您询问主要信息,然后向用户询问图片。

如果你不能(或者根本不希望这样),最简单的方法是使用这个值设置一个隐藏字段。

作为替代方案,您可以将此文件上传到临时文件夹或使用可与您要发送的数据相关联的特定名称,例如用户的 ID 或会话 ID + 一些唯一标识符。

通过插件发送图像后,您无需将图像 url 与表单数据一起发送,因为您将知道它将在哪里,并且可以在将数据保存到数据库之前重命名、移动和构建 url。

【讨论】:

以上是关于结合jQuery文件上传和表单到mysql的主要内容,如果未能解决你的问题,请参考以下文章

使用Jersey上传文件

PHP表单文件上传到Mysql和服务器

文件上传表单 上传文件的细节 文件上传下载和数据库结合

Uploadify JQuery & PHP/MySQL - 上传时更改文件名

如何使用 PHP、jQuery 和 AJAX 上传多个文件

Struts2学习利用ajax异步上传