Mam skrypt wieloplikowego uploadu plików na serwer i bazy danych. Problem mam taki że np. zauplodowałem 3 pliki, mają one nazwę np. 1.png,2.png,3.png i uploadują one się na serwer i wpisują do bazy danych tylko problem w tym że każdy obrazek wpisuje się osobno do każdego rekordu. A ja chcę żeby te wszystkie pliki czy obrazki były w jednym polu, rekordzie wpisane po przecinku..
Jest tak:
A chcę tak:
Cały kod:
//jeżeli zatwierdzono formularz
if ( isset($_POST['submit']) && !empty($_POST['submit']) && !empty($_FILES['files']['name'][0]) ) {
//zmienne formularza
$h2 = $_POST['name-header'];
$text = $_POST['text'];
$files = $_FILES['files'];
$uploaded = array();
$failed = array();
$allowed = array('jpg', 'png', 'svg', 'psd');
foreach( $files['name'] as $position => $file_name ) {
$file_tmp = $files['tmp_name'][$position];
$file_size = $files['size'][$position];
$file_error = $files['error'][$position];
$file_ext = explode('.', $file_name);
$file_ext = strtolower(end($file_ext));
//jeżeli rozszerzenie pliku jest zgodne
if( in_array($file_ext, $allowed) ) {
//jeżeli plik nie ma żadnych błędów
if ( $file_error === 0 ) {
//jeżeli plik jest mniejszy niż 10mb
if ( $file_size <= 10485760 ) {
$file_new_name = uniqid('', true) . '.' . $file_ext;
$file_destination = 'images/' . $file_new_name;
if ( move_uploaded_file($file_tmp, $file_destination) ) {
//select old name image from databse
$query = $dbh->prepare("INSERT INTO articles (photos, title, textads) VALUES (:photos, :title, :textads)");
$query->bindParam(':photos', $file_destination);
$query->bindParam(':title', $h2);
$query->bindParam(':textads', $text);
$query->execute();
echo $file_destination . ',';
} else {
$failed_destination = 'Nie udało się przenieść pliku!';
echo $failed_destination;
}
} else {
$failed_size = 'Plik jest za duży!';
echo $failed_size;
}
} else {
$failed_size = 'Wystąpił error, przepraszamy!';
echo $failed_size;
}
} else {
//informacja developerska
$failed[$position] = "[{$file_name}] file extension '{$file_ext}' is not allowed";
//zmienna z błędem o złym rozszerzeniu
$failed_ext = 'Rozszerzenie pliku jest nieprawidłowe!';
echo $failed_ext;
}
}
if ( !empty($failed) ) {
echo '<br> Informacja developerska: <br>';
print_r($failed);
}
}
Z góry dziękuję!