Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 21.03.2015, 09:17
haa haa вне форума
Интересующийся
Отправить личное сообщение для haa Посмотреть профиль Найти все сообщения от haa
 
Регистрация: 21.03.2015
Сообщений: 19

Submit Формы после выбора файла
Есть код на js, отправить форму после выбора файла. Когда выбираю файл обновляет страничку и все, а на базу не записывает. А без js т.е вручную работает. Может кто знает в чем проблема?
jQuery(document).ready(function(){
     
	   	form = $("#formid"), upload = $("#select");
	    upload.change(function(){
	      form.submit();
	    });

    });


<form method="POST" action="" id="formid" enctype="multipart/form-data">
		    <input type="file" name="uploadfile" id="select">
		    <input type="submit" name="uploadfile" style="display: none;">
		</div>
	</form>
Ответить с цитированием
  #2 (permalink)  
Старый 21.03.2015, 09:56
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от haa
name="uploadfile"
Убери name у кнопки. Или измени. Хотя по идее должно наоборот без js не работать.
И кнопку не скрывай, а засунь ее в <noscript>
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #3 (permalink)  
Старый 21.03.2015, 10:09
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

обновляет страничку и все, а на базу не записывает

Что за файл, как получаете файл и записываете?
Ответить с цитированием
  #4 (permalink)  
Старый 21.03.2015, 10:16
haa haa вне форума
Интересующийся
Отправить личное сообщение для haa Посмотреть профиль Найти все сообщения от haa
 
Регистрация: 21.03.2015
Сообщений: 19

При нажатии $_POST['uploadfile']

Загруженный файл
$file = $_FILES['uploadfile']['name']

mySQL запрос
UPDATE users SET photo=$file
Ответить с цитированием
  #5 (permalink)  
Старый 21.03.2015, 10:24
haa haa вне форума
Интересующийся
Отправить личное сообщение для haa Посмотреть профиль Найти все сообщения от haa
 
Регистрация: 21.03.2015
Сообщений: 19

Сообщение от danik.js Посмотреть сообщение
Убери name у кнопки. Или измени. Хотя по идее должно наоборот без js не работать.
И кнопку не скрывай, а засунь ее в <noscript>
не работает
Ответить с цитированием
  #6 (permalink)  
Старый 21.03.2015, 10:28
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Ну так это не запись файла в базу, это имя файла в базе. Прежде чем писать в базу, вы проверку делаете того что получаете?

PS. И так нельзя записывать даже имя.
Ответить с цитированием
  #7 (permalink)  
Старый 21.03.2015, 10:36
haa haa вне форума
Интересующийся
Отправить личное сообщение для haa Посмотреть профиль Найти все сообщения от haa
 
Регистрация: 21.03.2015
Сообщений: 19

Ну да, делаю проверку, ну тут же дело не втом что я получаю, а мне просто надо записать имя полученного файла. А как можно записать имя ?

Когда сам нажимаю на кнопку записывает, обновляет. Все работает как надо.
Ответить с цитированием
  #8 (permalink)  
Старый 21.03.2015, 10:49
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Имя нужно записывать как минимум так basename($_FILES['uploadfile']['name']), естественно после того как удостоверившись, что все соответствует ожиданиям.

А получает ли сервер файл можно проверить, что показывает массив принятый?
Ответить с цитированием
  #9 (permalink)  
Старый 21.03.2015, 11:35
haa haa вне форума
Интересующийся
Отправить личное сообщение для haa Посмотреть профиль Найти все сообщения от haa
 
Регистрация: 21.03.2015
Сообщений: 19

Да, да да , я знаю что такое base name. Но вопрос то не в этом.
Массив показывает ошибку если отправить форму вручную. Тут дело в js
Ответить с цитированием
  #10 (permalink)  
Старый 21.03.2015, 12:05
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

В показанном коде ошибки нет, я не могу продемонстрировать здесь, но это код будет работать, могу снимки с экрана только показать.

А вот ошибки в массиве $_FILES на сервере говорят о том, что файл передается, иначе бы массив был пуст. По номеру ошибки можно судить что происходит.

Знаете что такое basename(), так почему не используете.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Добавление поля для выбора файла MrKapustin jQuery 5 04.04.2014 18:34
Диалоговое окно выбора файла Saboth Элементы интерфейса 6 14.02.2012 16:29
JQUERY - как сделать синхронный выбор/отмену выбора, в нескольких селектах формы sadzeburo jQuery 8 06.10.2011 15:24
после выбора элемента vanderv jQuery 4 30.05.2010 23:35
Вставка текста в textarea после выбора select option modelisto Общие вопросы Javascript 2 14.10.2009 19:27