I am building an e-mail template builder that allows me to input content that then populates into an html email template. Part of the form allows you to add new sections. Each section has an upload input that allows users to add a thumbnail image to that section. I'm struggling to figure out how to send multiple images in a single form that come from multiple inputs (rather than just setting a single input to "multiple").
Here's the HTML
<div class="row">
<div id="example1" class="list-group col">
<div class="list-group-item article">
<h4>Article Heading:</h4>
<input type="text" name="ArticleHeading[]"
placeholder="Type your heading" />
<h4>Article Subheading:</h4>
<input type="text" name="ArticleHeading[]"
placeholder="Type your subheading"/>
<h4>Thumbnail Image:</h4>
<input type="file" name="fileToUpload"
id="fileToUpload">
</div>
</div>
</div>
Here's the PHP:
//IMAGE UPLOADING
$target_dir = "uploads/";
$target_file = $target_dir .
basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType =
strtolower(pathinfo($target_file,PATHINFO_EXTENSION));
// Check if image file is a actual image or fake image
if(isset($_POST["submit"])) {
$check = getimagesize($_FILES["fileToUpload"]
["tmp_name"]);
if($check !== false) {
$uploadOk = 1;
} else {
echo "File is not an image.";
$uploadOk = 0;
}
}
// Check if file already exists
if (file_exists($target_file)) {
echo "Sorry, file already exists.";
$uploadOk = 0;
}
// // Check file size
// if ($_FILES["fileToUpload"]["size"] > 500000) {
// echo "Sorry, your file is too large.";
// $uploadOk = 0;
// }
// Allow certain file formats
if($imageFileType != "jpg" && $imageFileType != "png"
&& $imageFileType != "jpeg"
&& $imageFileType != "gif" ) {
echo "Sorry, only JPG, JPEG, PNG & GIF files are
allowed.";
$uploadOk = 0;
}
// Check if $uploadOk is set to 0 by an error
if ($uploadOk == 0) {
echo "Sorry, your file was not uploaded.";
// if everything is ok, try to upload file
} else {
if (move_uploaded_file($_FILES["fileToUpload"]
["tmp_name"], $target_file)) {
} else {
echo "Sorry, there was an error uploading your
file.";
}
}
$thumbnailPath = "uploads/".$_FILES["fileToUpload"]
["name"];
//END IMAGE UPLOADING
I tried naming the file input name="file[]" and then using the array to upload each file, but it errored every time....not sure what else to do.