我正在努力使这项工作,我不知道如何编码它。我想从一个输入字段(不需要是一个输入字段)上传1到5个图像到db表。为了避免混淆,我只想将图像名称存储在表格中,而是将图像存储到文件夹中。单张图片上传工作正常但我需要将图片上传到最多5张图片。
这是我现在的代码:
$pdo = connect();
if(isset($_POST['insertp'])) {
$InputTitle = $_POST['InputTitle'];
$InputDescription = $_POST['InputDescription'];
$InputCategory = $_POST['InputCategory'];
if(isset($_FILES['InputImage'])){
$name_array = $_FILES['InputImage']['name'];
$tmp_name_array = $_FILES['InputImage']['tmp_name'];
$type_array = $_FILES['InputImage']['type'];
$size_array = $_FILES['InputImage']['size'];
$error_array = $_FILES['InputImage']['error'];
for($i = 0; $i < count($tmp_name_array); $i++){
if(move_uploaded_file($tmp_name_array[$i], "../assets/images/".$name_array[$i])){
echo $name_array[$i]." upload is complete<br>";
} else {
echo "move_uploaded_file function failed for ".$name_array[$i]."<br>";
}
}
}
$sql = $pdo->prepare("INSERT INTO product(title,description,id_category,image)
VALUES(:field1,:field2,:field3,:field4)");
$sql->execute(array(':field1' => $InputTitle,
':field2' => $InputDescription,
':field3' => $InputCategory,
':field4' => $name_array));
$affected_rows = $sql->rowCount();
if ($affected_rows > 0) {
header( "refresh:0" );
die();
}
}
这是我想要存储数据的女巫表。是否可以在一列(图像)中存储多个图像名称?
id |标题|描述| id_category |图像
,这是我的输入字段:
<div class="form-group"> <!-- IMAGE -->
<label for="image">Image upload</label>
<input type="file" name="InputImage[]" id="InputImage" value="">
<input type="file" name="InputImage[]" id="InputImage" value="">
<input type="file" name="InputImage[]" id="InputImage" value="">
<input type="file" name="InputImage[]" id="InputImage" value="">
<input type="file" name="InputImage[]" id="InputImage" value="">
<p class="help-block">Select image.</p>
</div>
我知道这里有很多类似的问题,但我不知道如何在我的代码中实现它们,所以如果你能帮助我,我会很感激!