使用 PHP 上传多个图像,并将条目提交到 mysql

Posted

技术标签:

【中文标题】使用 PHP 上传多个图像,并将条目提交到 mysql【英文标题】:Upload Multiple Images with entries submitting into mysql using PHP 【发布时间】:2012-02-28 19:09:59 【问题描述】:

我需要从一个输入文件中选择带有进度条的多个图像上传。图片将上传到路径 uploads/photos/ 中,并且图片路径也必须上传到数据库中。 试了很多网上的代码,上传到文件夹成功,但是无法上传到mysql

谢谢你- 维韦克·米什拉。

【问题讨论】:

上传到mysql是什么意思???您只需将带有位置(可选)的image name 保存在表格的图像字段中,而不是完全该图像 我正在尝试这样做,但是当我使用 javascript 将图像上传到路径时,我无法获得多个图像名称。我需要 aray,但它没有发生。 【参考方案1】:

上传多张图片是html5的一项功能,并非所有浏览器都完全支持。

你必须使用一些插件来上传多个文件

我建议使用uploadify

这个article可以帮助你更好

编辑

在htm5中你可以使用单个<input type=file>来上传多张图片

<form action='#' method='post' enctype='multipart/form-data'>
  <input name='uploads[]' type=file multiple>
  <input type='submit'>
</form>

参考:

w3cone more

【讨论】:

支持上传多个文件已有一段时间了。 php.net/manual/en/features.file-upload.multiple.php 的文档没有显示任何 HTML 版本限制,而且在 HTML5 可用之前,GMail 已经支持多个文件附件几年了。 @MaxVT :您提供的链接使用多个input type=file,而在html5 中,您可以仅使用一个input type=file 上传多个文件。明白我的意思 @MaxVT : 阅读 this 和 this 如果您在回答中也澄清这一点,我会记得我的反对意见。 @MaxVT :虽然我已经更新了我的答案,并且您必须在否决某人的答案之前进行更新。:) 好的【参考方案2】:

php 可以是这样的:

if (isset($_FILES['images'])) 
     

        foreach ($_FILES['images']['tmp_name'] as $key => $tmp_name)
        
                    $target="Your Path/";
                    $target=$target.$_FILES['images']['name'][$key];
                    if(move_uploaded_file($tmp_name, $target))
                    
                      $fname=$_FILES['images']['name'][$key];
                      mysql_query("INSERT INTO `Table Name`(`Imgpath`) VALUES ('$fname')");
                      $target="";
                     
              

而HTML应该是

  <form method="post" enctype="multipart/form-data" >
  <input type="file" name="images[]" multiple>

【讨论】:

【参考方案3】:

您究竟尝试过哪些脚本?您的代码中是否存在您怀疑的特定区域?

Google 搜索“上传多个文件 php”为该功能提供了足够多的示例。您可能需要执行多个 MySQL 查询,而不是一个,才能将所有上传的文件插入数据库。

【讨论】:

以上是关于使用 PHP 上传多个图像,并将条目提交到 mysql的主要内容,如果未能解决你的问题,请参考以下文章

使用 PHP 和单个 HTML 输入将多个图像上传到服务器和数据库[重复]

如何使用 javascript 将多个图像上传到 cloudinary 并将 url 发送到另一个数据库

如何使用 phalcon 上传多个图像并将其名称存储在数据库中?

提交带有上传图片选项的表单时出错。 PHP 代码点火器

使用 multer 将多个图像上传到 AWS S3

PHP和Ajax将文件路径上传到Mysql并将重命名的图像保存到文件夹失败