我正在努力解决一些多图片上传脚本问题。
我要实现的是,上传多个图像然后将每个图像保存路径保存到变量
所以我稍后用于显示。
但是当我运行脚本时,我只能保存第一个上传图像路径值。
<form action="" method="post" enctype="multipart/form-data">
<p>
<input type="file" name="pictures[]" /><br>
<input type="file" name="pictures[]" /><br>
<input type="file" name="pictures[]" /><br>
<input type="file" name="pictures[]" /><br>
<input type="submit" value="Send" />
</p>
</form>
<?php
foreach ($_FILES["pictures"]["error"] as $key => $error) {
if ($error == UPLOAD_ERR_OK) {
$tmp_name = $_FILES["pictures"]["tmp_name"][$key];
$name = $_FILES["pictures"]["name"][$key];
$ext = substr(strrchr($name, "."), 1);
$randName = md5(rand() * time());
$pathimg = "images/$randName.$ext";
move_uploaded_file($tmp_name, $pathimg );
echo '<img src="'.$pathimg.'"; >' ;
}
}
?>
这是上传路径&#39;&#39;
例如,如果我上传3张图片,那么我想将这3张图片上传的路径保存到变量中。所以每个变量都是$ A,$ B,$ C
或者如果我上传4张图片,我也想将这4张图片路径变为变量,然后再用于
请赐教!感谢答案 0 :(得分:1)
为什么在上传时会出现错误。
更改
foreach ($_FILES["pictures"]["error"] as $key => $error) {
到
foreach ($_FILES["pictures"] as $key => $tempFile) {
此外,成功上传后,将图像附加到数组中。
$arr = array();
foreach ($_FILES["pictures"] as $key => $tempFile) {
// YOUR CODE
$arr[] = '<img src="'.$pathimg.'"; >' ;
}
然后将它打印出来。
if (! empty($arr)) {
foreach ($arr as $img) {
echo '<img src="'.$img.'"/>';
}
}