0

シンプルな HTML5 マルチファイル アップローダーを構築しようとしています。

<input type="file" name="listingimages[]" multiple>

$_FILES ではなく、listingimages[] で機能するように、以下に思いついたコードを変更したいと思います。いくつかの異なるバリアントを試しましたが、listingimages[] のファイルを取得できないようです。以下のスクリプトは、単一のアップロード フィールドごとに正常に動作しますが、個々のアップロード アレイごとに動作する必要があります。

$files = $_FILES;

foreach ($files as $field_name => $val) 
{  
        $target_path = "../../uploads/listing/files/";
        $target_path = $target_path . basename($files[$field_name]['name']); 
        move_uploaded_file($files[$field_name]['tmp_name'], $target_path);
        $_POST[$field_name] = $files[$field_name]['name'];  
}

私がやりたいことは、すべての $_FILES ではなく、listingimages[] のみで機能するように上記を変更することです。

4

2 に答える 2

0

foreachを変更できるはずです。

foreach($_FILES['listingimages'] as $field_name => $val) {
于 2012-07-19T05:21:51.243 に答える
0

さらに調査を重ねた結果、次のような答えにたどり着きました。

for ($i = 0; $i < count($_FILES['listingimages']['name']); $i++) {
    $target_path = "../../uploads/listing/files/";
    $target_path = $target_path . basename($_FILES['listingimages']['name'][$i]); 
    move_uploaded_file($_FILES['listingimages']['tmp_name'][$i], $target_path);
}
于 2012-07-19T07:50:24.233 に答える