0
複数の画像をアップロードする必要があります。問題が2つあります。最初のものは携帯電話から2つ以上のファイルをアップロードできません。携帯電話からあなたはカメラを開く必要があり、それがPCにあればファイル選択のウィンドウを表示する必要がありますが、これはうまくいきますが、携帯電話では1つしか残っていませんが、これまではCrhomeを使ってAndroidで試しただけです) 2番目の詳細は最初の要素は保存されていません。どちらもないのでファイルだけであれば、位置[0]を取らないようですが、複数の画像を置くと最初の要素は保存されません他は正しく保存されています。私はしばらくの間試してきましたが、問題は見えません。私のファイルの構造を附属書:
カメラ\└───uploads
└───index.php
└───upload.php2つ以上の画像をアップロードするPHP
のindex.php:
<html>
<head>
<meta charset="UTF-8">
<title>upload</title>
</head>
<body>
<form action="upload.php" method="post" multipart="" enctype="multipart/form-data">
<input type="file" name="img[]" accept="image/*" id="capture" capture="camera" multiple >
<input type="submit">
</form>
</body>
</html>
をそしてupload.php:これは私の作品
<?php
echo '<pre>';
$img = $_FILES['img'];
if(!empty($img))
{
$img_desc = reArrayFiles($img);
print_r($img_desc);
foreach($img_desc as $val)
{
$newname = date('YmdHis',time()).mt_rand().'.jpg';
move_uploaded_file($val['tmp_name'],'./uploads/'.$newname);
}
}
function reArrayFiles($file)
{
$file_ary = array();
$file_count = count($file['name']);
$file_key = array_keys($file);
for($i=0;$i<$file_count;$i++)
{
foreach($file_key as $val)
{
$file_ary[$i][$val] = $file[$val][$i];
}
}
return $file_ary;
}
?>
あなたの 'reArrayFiles'は間違っています。 'count($ file ['name'])'は、アップロードされたファイルの数を教えてくれません。 – chiliNUT
同じ問題は、最初の画像は – Alphalapz
数($ファイルUU間違いがあった[「名前」]は、あなたの完全なコードの罰金 – Alphalapz