[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Мультизагрузка
imediasun
Как сделать чтобы была одна форма
для загрузки файла и была бы кнопка "+фото"
и при загрузке последующего файла файла
в базу бы добавлялась фотка и миниатюра к ней
и все фото относились бы к одному id

есть такой скрипт


<?
include('../blocks/bd.php');
//если в посте нажата кнопка сабмит
if (isset($_POST["submite"])){
//если существует суперглобальный массив $_FILES
if (isset($_FILES["file"])){
// Настройки загрузки
// Полный путь для папки загрузки согласно глобальных php
// Справка $_SERVER - http://php.ru/manual/reserved.variables.server.html

$upload_path = $_SERVER["DOCUMENT_ROOT"]."/images/";
// Переменная для формирования ссылок
$path = "http://".$_SERVER["SERVER_NAME"]."/images/";
$max_filesize = 524288; // Максимальный размер загружаемого файла в байтах (в данном случае он равен 0.5 Мб). В исходном файле add_goods_save.php в этом деле ошибка
// Перед сохранением проверим все файлы на соответствие
//

for($i = 0; $i<count($_FILES["file"]["name"]); $i++){
$infofile = $_FILES["file"]["type"][$i];
switch($infofile){
case "image/jpeg":
break;
case "image/gif":
break;
case "image/png":
break;
default:
exit("Формат файла ".$_FILES["file"]["name"][$i]." не поддерживается <br /><a href=\"".$_SERVER["REQUEST_URI"]."\">Вернитесь назад</а>");
}
// размер файла
if($max_filesize < (int)($_FILES["file"]["size"][$i])){
exit("Размер файла ".$_FILES["file"]["name"][$i]." превышает допустимые 0.5Мб<br /><a href=\"".$_SERVER["REQUEST_URI"]."\">Вернитесь назад</а>");
}
}

// Скрипт взял отсюда http://sanchiz.net/blog/resizing-images-with-php
// Там же есть и описание

include('classSimpleImage.php');
$array = array();
for ($i = 0; $i < count($_FILES["file"]["tmp_name"]);$i++) {
$filename = $_FILES["file"]["name"][$i];
if(move_uploaded_file($_FILES["file"]["tmp_name"][$i],$upload_path.$filename)){
// Заполняем массив для записи в базу
$array[$i] = array();
// Выдёргиваем расширение
$ext = substr($filename, strpos($filename,'.'), strlen($filename)-1);
// Имя файла перевьюшки
$thumb = "thumb_".substr($filename, 0, strpos($filename,'.')).$ext;
// Ресайзим
$image = new SimpleImage();
$image->load($upload_path.$filename);
$image->resizeToWidth(33); // Пропорционально по ширене 33 пикселя
$image->save($upload_path.$thumb);
// Пишем пути к файлам в массив
$array[$i][0] = $path.$filename;
$array[$i][1] = $path.$thumb;
echo 'Файл №'.$i.'<br />';
echo '<a href="'.$array[$i][0].'" target="_blank" title="Download '.$array[$i][0].'" >'.$filename.'<br /><img src="'.$array[$i][0].'" /></a><br/>';
echo '<a href="'.$array[$i][1].'" target="_blank" title="Download '.$array[$i][1].'" >'.$thumb.'<br /><img src="'.$array[$i][1].'" /></a><br />------------------------------------------------------------------------------------<p> </p>';
}else{
echo "При загрузке файла ".$filename." возникли ошибки<br />";
}
}

if(count($array)){
echo "<br /><br /><br /><h1>Данные массива:</h1> <br />";
print_r($array);



}
}
}
else{
?>
<form action="index.php" method="post" enctype="multipart/form-data">
<
input name="file[]" type="file" style="width:400px" /><br />
<
input name="file[]" type="file" style="width:400px" /><br />
<
input name="file[]" type="file" style="width:400px" /><br />
<
input name="file[]" type="file" style="width:400px" /><br />
<
input name="submite" type="submit" value="Отправить" />
</
form>
<?
}
?>
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.