php表单为特定名称上传多个图像

标签 php mysql file-upload

我创建了一个 php 表单,用户必须输入用户名并上传多张图片,后一张工作正常,但它不会为每张图片复制用户名 在表中我有两列 imagename 但它只为第一列取值,其他列留空

php代码如下

<?php 
$size=count($_FILES["photo"]["name"]);
for($i=0; $i < $size;$i++)
{
    $name=mysql_real_escape_string($_POST['name'][$i]);
    $imagefile=mysql_real_escape_string($_FILES["photo"]["name"][$i]);
    if ((($_FILES["photo"]["type"][$i] == "image/gif")
    || ($_FILES["photo"]["type"][$i] == "image/jpeg")
    || ($_FILES["photo"]["type"][$i] == "image/jpg")
    || ($_FILES["photo"]["type"][$i] == "image/pjpeg")
    || ($_FILES["photo"]["type"][$i] == "image/x-png")
    || ($_FILES["photo"]["type"][$i] == "image/png"))
    && ($_FILES["photo"]["size"][$i] < 10485760))//9 mb
      {
      if ($_FILES["photo"]["error"][$i] > 0)
        {
        $Error=$Error.' '.$_FILES["photo"]["error"];
        }
      else
        {
        $path="image/".$_FILES["photo"]["name"][$i];    
         move_uploaded_file($_FILES["photo"]["tmp_name"][$i],$path);
         $sql="INSERT INTO restimage (name, rest_image) "."VALUES('$name','$imagefile')";
     $retval = mysql_query($sql);

        }
      }
    else
      {
      $Error=$Error.' '.$_FILES["photo"]["name"][$i] .' is corrupt file or not choosen ';
      }
}
if($Error =="")
{
echo "images uploaded successfully";
}
else
{
echo $Error;
}
?>

HTML 部分

<input type="text" name="name[]" id="name">
<input type="file" name="photo[]" >

只有一个字段可以输入姓名,四个字段可以上传四张图片

最佳答案

像这样更改您的代码;

<?php 
$size=count($_FILES["photo"]["name"]);
$name=mysql_real_escape_string($_POST['name']);
for($i=0; $i < $size;$i++)
{
.....

}

你需要在 for 循环中获取用户名

编辑:在您的 html 中仅使用一个用户名文本框;

<input type="text" name="name" id="name" value=""/>

关于php表单为特定名称上传多个图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22224767/

相关文章:

PHP - 在数据库问题中编辑数据

c# - 在 C# 中连接到 phpmyadmin Web 服务器 xampp

php - 交替颜色 HTML 表 PHP

php - 在 Wordpress 中包含一个 github jquery 插件

php - mysql 准备语句 IFNULL

php 复制/同步/复制数据库内容

mysql - 关系数据库设计,一个元表多个表?

ruby-on-rails - 具有中间模型的 ActiveStorage 多次上传

ruby-on-rails - 将上传的文件发送给resque工作人员进行处理

javascript - 跨平台Ajax上传不起作用