我需要修改图片上传表单,以便我可以上传多个图片(准确的说是6张)。我尝试添加另一个输入,并按照其他人的建议更改名称值,但仍然显示与第一个输入相同的图像。我知道这可能很简单,但我不是PHP开发人员,所以我一直无法找到解决方案。上传多张图片,PHP
下面是上传图片的代码:
if(isset($_FILES['image']) && $_FILES['image']['tmp_name'] != '') {
$tempext = explode('.', $_FILES['image']['name']);
$tempext = strtolower($tempext[count($tempext) - 1]);
switch($tempext) {
case 'jpg':
case 'jpeg':
$ext = '.jpg';
break;
default:
$ext = false;
}
if($ext != false && move_uploaded_file($_FILES['image']['tmp_name'], $_SERVER['DOCUMENT_ROOT'] . '/img/profiles/' . $id . $ext)) {
$imagesuccess = chmod($_SERVER['DOCUMENT_ROOT'] . '/img/profiles/' . $id . $ext, 0644) ? 'yes' : 'no';
} else {
$imagesuccess = 'no';
}
}
而对于输入:
<div class="control-container<?php if((isset($_FILES['image']) && !empty($_FILES['image']['name']))) echo ' error'; ?>">
<label for="image">Large Image</label>
<div class="multifield">
<?php
if(file_exists($_SERVER['DOCUMENT_ROOT'] . '/img/profiles/' . $id . '.jpg')) {
echo '<img src="/img/profiles/' . $id . '.jpg?' . rand() . '" width="310px" />';
}
?>
<input type="file" name="image" id="image" />
</div>
</div>
任何帮助将非常感激。
感谢
我试过这两种解决方案,但表单仍然只发送一个图像到数据库,这是使用最后一个输入字段上传的图像。 – Ryan 2012-03-19 15:29:47
'var_dump($ _ FILES)'显示什么?去结构化你的代码。 – 2012-03-19 15:32:40
好吧,我已经搞砸了一下,它现在看起来像在数据库中显示出来。它出现了一个1添加到ID的末尾,即使我已经添加_02到输入名称和URL。尽管如此,它似乎仍然不想把图片放到网站上。 – Ryan 2012-03-19 15:45:37