Php 上载带有多个输入的多文件文件

Php 上载带有多个输入的多文件文件,php,html,ajax,Php,Html,Ajax,我的HTML代码是(AJAX方法): 我找到了解决办法。事实上,变量$key总是相同的。所以这张照片总是被循环抹掉 我不得不写: foreach($_FILES as $key=>$photo) 要获得$key值。我还保留了$photo的相同用途。现在一切都好了 希望能有所帮助。您对文件夹有读写权限吗是的,第一个文件已正确上载到atm。问题是下一个文件..是否说第二轮存在该文件夹?似乎没有问题。我试图计算文件夹创建的时间,它总是返回1,如果已经存在,则返回0。 <?php he

我的HTML代码是(AJAX方法):



我找到了解决办法。事实上,变量$key总是相同的。所以这张照片总是被循环抹掉

我不得不写:

foreach($_FILES as $key=>$photo)
要获得$key值。我还保留了$photo的相同用途。现在一切都好了


希望能有所帮助。

您对文件夹有读写权限吗是的,第一个文件已正确上载到atm。问题是下一个文件..是否说第二轮存在该文件夹?似乎没有问题。我试图计算文件夹创建的时间,它总是返回1,如果已经存在,则返回0。
<?php

header("Access-Control-Allow-Origin: *");

if( isset( $_SERVER['HTTP_X_REQUESTED_WITH'] ) && ( $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest' ) ) //sécurité pour ne pas avoir d'accès direct sur le fichier
{
    include('../MODEL/sqlConnexion.php');
    //Partie traitement des photos
    foreach($_FILES as $photo)
    {
        $key = key($_FILES);
        if (isset($photo))
        {
            if ($photo['error'] == 0)
            {
                // Test pour voir si l'extension du fichier est bien autorisée
                $file_path = pathinfo($photo['name']);
                $file_extension = $file_path['extension'];
                $allowed_extensions = array('jpg', 'jpeg', 'gif', 'png');
                if (in_array($file_extension, $allowed_extensions))
                {
                    // Test pour voir si le fichier n'est pas trop gros
                    if ($photo['size'] <= 1048576)
                    {
                        $response['check'] = 'OK';
                        $path = '../images/chevaux/' . $_POST['horseName'] . '/' . $key . '.' . $file_extension;
                        $folder = '../images/chevaux/' . $_POST['horseName'];
                        if (!is_dir($folder))
                            {
                                mkdir($folder);
                            }
                        move_uploaded_file($photo['tmp_name'], $path);
                    }
                    else
                    {           
                        $response[$nomImage] = "Le fichier " . $key . " est trop volumineux.";
                    }
                }
                else
                {
                    $response[$nomImage] = "L'extension du fichier " . $key . " n'est pas prise en charge, les extensions prises en charge sont jpg, jpeg, gif, et png.";
                }

            }
            elseif ($photo['error'] != 4)
            {
                $response[$nomImage] = "Le fichier " . $key . "est en erreur.";
            }
        }
    }
    if ((count($response) == 1) && ($response['check'] == 'OK'))
    {
        $response['check'] = 'OK';
    }
    else
    {
        $response['check'] = 'NOTOK';
    }
    echo json_encode($response);
}
foreach($_FILES as $key=>$photo)