Ik heb 3 werkende forms op mijn website, nadat deze worden ingevuld en verzonden komt dit allemaal keurig bij de juiste emailadressen aan (PHPmailer gebruik ik)
Alleen bij 2 forms heb ik de mogelijkheid tot het meesturen van attachments (max 5mb - .jpg, .jpeg, .png, .doc, .docx, en .pfd only. The javascript validatie zorgt ervoor dat er geen andere bestanden geupload kunnen worden, Bij het testen op een local server werkte alles zoals behoren.
Alleen nu, nu ik op een live server test, Worden de bestanden niet meeverzonden.
<script>// Bestandsverwerking en -upload
$bestanden = [];
for ($i = 1; $i <= 4; $i++) {
$fileInputName = "fileUpload" . $i;
if (isset($_FILES[$fileInputName]) && $_FILES[$fileInputName]['error'] == UPLOAD_ERR_OK) {
// Bestandstype en -grootte validatie
$allowedTypes = ['image/jpeg', 'image/png', 'application/pdf', 'application/msword', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'];
$maxSize = 5 * 1024 * 1024; // 5 MB
$fileType = $_FILES[$fileInputName]['type'];
$fileSize = $_FILES[$fileInputName]['size'];
if (!in_array($fileType, $allowedTypes) || $fileSize > $maxSize) {
echo "Ongeldig bestandstype of bestandsgrootte voor bestand $i.<br>";
continue;
}
// Bestandsupload
$target_dir = "../../../back-end/uploads/";
$target_file = $target_dir . basename($_FILES[$fileInputName]["name"]);
if (move_uploaded_file($_FILES[$fileInputName]["tmp_name"], $target_file)) {
$bestanden[] = $target_file;
// Logboekbericht
$logMessage = "[" . date("d-m-Y H:i:s") . "] Bestand geГјpload: " . basename($target_file) .
" door " . $email .
", Grootte: " . filesize($target_file) . " bytes\n";
writeToLog($logMessage, $email);
} else {
echo "Er was een probleem met het uploaden van bestand $i.<br>";
}
}
}</script>
Ligt dit aan de server instellingen, wat doe ik verkeerd.
Onderwerp: Contactform werkt - alleen attachments worden niet verzonden of geupload.
FIXED !