Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/43: Рейтинг темы: голосов - 43, средняя оценка - 4.86
15 / 15 / 9
Регистрация: 22.11.2013
Сообщений: 762

Как получить файл из input:file?

10.05.2014, 16:04. Показов 8072. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите. Как можно получить файл из input:file и занести его в переменную, чтобы можно было отправить после AJAXом?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.05.2014, 16:04
Ответы с готовыми решениями:

Получить изображение из input type='file'
Здравствуйте. Имеется такой код (function ($) { $.extend({ uploadPreview : function (options) { var settings...

Получить названия файлов из input file в input text
Как переместить названия файла из input type file в input type text с помощью javascript?

<input type="file"> - как мне автоматом в этот контрол прописать файл с путем?
как мне автоматом в этот контрол прописать файл с путем, а не ручками через browse... делать?

11
 Аватар для alexsamos33
669 / 640 / 335
Регистрация: 26.04.2014
Сообщений: 2,122
10.05.2014, 17:00
Лучше отправлять в скрытом фрейме или использовать HTML5 XmlHttp2
1
15 / 15 / 9
Регистрация: 22.11.2013
Сообщений: 762
10.05.2014, 21:25  [ТС]
да блин. мне хоть как. у меня есть textarea и input:file. Интересует как получить и отправить этот файл в PHP

Добавлено через 1 час 48 минут
HEEEELPPP!?((
0
 Аватар для alexsamos33
669 / 640 / 335
Регистрация: 26.04.2014
Сообщений: 2,122
11.05.2014, 09:00
Вот сейчас делаю... Как будет готово - напишу... Wait...

Добавлено через 55 минут
Цитата Сообщение от bb_oo Посмотреть сообщение
да блин. мне хоть как. у меня есть textarea и input:file. Интересует как получить и отправить этот файл в PHP

Добавлено через 1 час 48 минут
HEEEELPPP!?((
PHP и Upload (Загрузка файлов на сервер)
Ну вот.
Код формы:
Кликните здесь для просмотра всего текста
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ajax upload files - Загрузка файлов</title>
<script src="js/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
var elem1 = document.getElementById("output1");
var elem2 = document.getElementById("errors1");
function sendForm1() {
elem1.innerHTML = "Идёт загрузка данных... Ждите...";
}
});
</script>
</head>
 
<body><br><br>
<p>Здесь показано как можно отправить данные из формы без перезагрузки страницы.</p>
<p align="center">Отправка формы <strong>в скрытом iframe</strong> без перезагрузки страницы</p>
<form name="form1" id="form1" action="uploader.php" target="iframe1" method="POST" enctype="multipart/form-data">
<label for="name1">Имя:</label>
<input type="text" name="name1" id="name1"><br>
<label for="text1">Сообщение:</label><br>
<textarea name="text1" id="text1" rows="10" cols="100"></textarea><br>
<label for="file1">Ваш файл:</label>
<input type="file" name="file1" id="file1">
<div align="center"><input type="submit" name="start1" id="start1" value="Отправить"></div>
</form>
<div id="errors1" style="background-color: red; color: white;"></div>
<div id="output1"></div>
<iframe name="iframe1" id="iframe1" src="" style="width: 1px; height: 1px; display: none;"></iframe>
</body>
</html>


Ну а php примерно такой:
Кликните здесь для просмотра всего текста
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
$name1 = "";
$text1 = "";
$start1 = "";
if(isset($_POST["name1"])) { $name1 = $_POST["name1"]; }
if(isset($_POST["text1"])) { $text1 = $_POST["text1"]; }
if(isset($_POST["start1"])) { $start1 = $_POST["start1"]; }
 
$uploaddir = "./files/";
$uploadfile = $uploaddir.basename($_FILES['uploadfile']['name']);
 
if(copy($_FILES['file1']['tmp_name'], $file1)) {
?><script>alert("Файл успешно загружен на сервер");</script><?
} else {
?><script>elem2.innerHTML = "Ошибка";alert("При загрузки файла на сервер произошла ошибка");</script><?
}
?>

Примечание: Можно данные из PHP не через js выводить, а фрейм сделать не скрытым, а видимым
и прямо в него как обычный HTML выводить информацию...

Но это примерно...
Принцеп понятен?

Добавлено через 10 часов 7 минут
FIXED

Кликните здесь для просмотра всего текста
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<? ob_start(); ?>
<script type="text/javascript">
var elem1 = parent.document.getElementById("output1");
var elem2 = parent.document.getElementById("errors1");
elem1.innerHTML = '';
elem2.innerHTML = '';
</script>
<?php
$name1 = "";
$text1 = "";
$start1 = "";
if(isset($_POST["name1"])) { $name1 = $_POST["name1"]; }
if(isset($_POST["text1"])) { $text1 = $_POST["text1"]; }
if(isset($_POST["start1"])) { $start1 = $_POST["start1"]; }
 
if($start1 == "" || $_FILES['file1']['name'] == "") { ?>
/* ошибка, форма без submit и file */
<script>elem2.innerHTML = "Форма незаполнена полностью."; alert("Ошибка отправки формы");</script>
<? exit(""); }
 
$uploaddir = "./files/";
@mkdir($uploaddir, 777);
$uploadfile = $uploaddir.basename($_FILES['file1']['name']);
 
if(copy($_FILES['file1']['tmp_name'], $uploadfile)) {
/* файл загрузился успешно, ошибок нет */
?><script>alert("Файл успешно загружен на сервер"); elem1.innerHTML = "<p>Файл загружен. Ссылка на файл: <a href='<? echo($uploadfile); ?>' target='_blank'><? echo($uploadfile); ?></a></p>";</script><?
} else {
/* при загрузке файла произошла ошибка */
?><script>elem2.innerHTML = "Ошибка";alert("При загрузки файла на сервер произошла ошибка");</script><?
}
?>
1
15 / 15 / 9
Регистрация: 22.11.2013
Сообщений: 762
11.05.2014, 12:45  [ТС]
хорошо. это понятно) но у меня есть только input:file и textarea. Без <form>. Поэтому и задумался таким вопросом как через AJAX можно передать

Добавлено через 1 час 2 минуты
Все отлично!) Не знаю почему, но я такой, что когда офф. мануал читаю, то что-то не сходится постоянно) а когда ребята на форуме почти тоже самое дают - все работает)
Спасибо.

Добавлено через 6 минут
а еще такой вопрос) Я вот юзаю PHPMailer, как мне прикрепить этот файл в сообщение?

Добавлено через 1 час 33 минуты
есть один ньюанс. Скажи, а почему папка с точки начинается? Почему я не могу создать свою папку?
Как только создам свою папку и изменю переменную, то файл не загружается( почему?
0
 Аватар для alexsamos33
669 / 640 / 335
Регистрация: 26.04.2014
Сообщений: 2,122
11.05.2014, 15:37
Скажи, а почему папка с точки начинается?
точка означает текущий каталог и относительно него будет отсчёт пути...
. текущий каталог
.. на 1 уровень выше

Как только создам свою папку и изменю переменную, то файл не загружается( почему?
Незнаю, возможно не правильно изменяете переменную...
1
15 / 15 / 9
Регистрация: 22.11.2013
Сообщений: 762
11.05.2014, 17:47  [ТС]
ну а как мне тогда сделать так, чтобы не было этой точки??? Она все портит в URL(
0
 Аватар для alexsamos33
669 / 640 / 335
Регистрация: 26.04.2014
Сообщений: 2,122
11.05.2014, 18:06
Ну убери её...
1
15 / 15 / 9
Регистрация: 22.11.2013
Сообщений: 762
11.05.2014, 18:07  [ТС]
если бы. ошибка вылазиит, которая в JS указана

Добавлено через 11 секунд
с алертом после загрузки
0
 Аватар для alexsamos33
669 / 640 / 335
Регистрация: 26.04.2014
Сообщений: 2,122
11.05.2014, 18:10
можешь написать не "./files" а, к примеру "files"...
1
15 / 15 / 9
Регистрация: 22.11.2013
Сообщений: 762
11.05.2014, 18:11  [ТС]
я уже разобрался) спасибо!=)
0
 Аватар для alexsamos33
669 / 640 / 335
Регистрация: 26.04.2014
Сообщений: 2,122
11.05.2014, 18:12
Не за что
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.05.2014, 18:12
Помогаю со студенческими работами здесь

Можно ли запретить ручной ввод в поле <INPUT type=file> ? Выбирать файл только по кнопке?
сабж

Получить файл из input
Доброго времени суток. Предположим есть: &lt;input type='file'&gt; Мы кликнули на него и выбрали некий файл. Возможно ли, если это...

Как записать значение в input type file
Помогите, как записать значение в &lt;input type='file'&gt;. При нажатии на кнопку обзор выбираю файл : с:1.jpg - в поле выдается 'с:1.jpg'....

Как можно в [input type='file'] поменять кнопку?
Как можно в поменять кнопку или сделать анологичную хрень из обычного поля и кнопки. И вообще интересно, если кто знает, что вней...

как скриптом установить атрибут VALUE объекта INPUT (type=file)
Есть объект &lt;input type='file' id='file_name'&gt; если сделать getElementById('file_name').value='c:pathfilename' то это самое value...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru