Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.06.2011, 13:35
Интересующийся
Отправить личное сообщение для alex_89 Посмотреть профиль Найти все сообщения от alex_89
 
Регистрация: 30.04.2011
Сообщений: 23

Загрузка валидных форматов картинок
Есть форма с загрузкой изображения, сделанная с помощью <input text="file">. необходимо сделать проверку на JS: загрузку только форматов картинок с определенным размером.Где можно глянуть примеры?
Ответить с цитированием
  #2 (permalink)  
Старый 15.06.2011, 13:40
Аватар для Skipp
.
Отправить личное сообщение для Skipp Посмотреть профиль Найти все сообщения от Skipp
 
Регистрация: 30.03.2010
Сообщений: 1,813

нигде, с помощью js вы это не сделаете.
Это делается обычно на стороне сервера.
__________________
.
Ответить с цитированием
  #3 (permalink)  
Старый 15.06.2011, 16:46
Профессор
Отправить личное сообщение для nikita.mmf Посмотреть профиль Найти все сообщения от nikita.mmf
 
Регистрация: 01.02.2010
Сообщений: 364

размер нельзя определить js'ом, а проверка на тип осуществяется с помощью регекспов, ну например
/\.(?:png|gif|jpe?g)$/
Ответить с цитированием
  #4 (permalink)  
Старый 17.06.2011, 18:43
Интересующийся
Отправить личное сообщение для alex_89 Посмотреть профиль Найти все сообщения от alex_89
 
Регистрация: 30.04.2011
Сообщений: 23

Я использовал ваше регулярное выражение, но у меня проверка не проходит, помогите в чем ошибка.
хтмл:
<FORM action="" method="post"  enctype="multipart/form-data" onsubmit="return sendform()" name="registr_form">
......
<table width="100%" border="0" cellpadding="0" cellspacing="4">
  <tbody>
	    <tr>
		   <td>
		     <input type="file" id="filename" name="filename" size="28">
			</td>
	    </tr>
		<tr>
		   <td>
		   <span class="text_pswd"> 
                 Аватар-ваша фотография,для отображения на сайте. 			   
               </span> 
		   </td>
		</tr>
  </tbody>
</table>
<tr>
 <span id="mesform"></span>
......
	      <td class="row_grey2" align="center">
		      <input name="reg" value="Зарегистрировать" class="submit_12" type="submit">
          </td>

      </tr>
.......
</FORM>


SCRIPT:
function sendform() {
.....
//Проверка формата картинок
   var fso =  new ActiveXObject("Scripting.FileSystemObject");
	var fileId = document.getElementById("filename");
    var fileStr = String(fileId.value);
    var thefile = fso.getFile(fileStr);
  
   var reg = /\.(?:png|gif|jpe?g)$/;
    if (reg.test(thefile)) {
    mesform.innerHTML ='Вы загрузили не корректный формат картинки. ';
    document.getElementById("filename").focus();
    return false;
         }
 
	 return true;
	 }
Ответить с цитированием
  #5 (permalink)  
Старый 18.06.2011, 14:09
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

зря, это мартышкин труд

я поставлю у мебя размер в 1 терабайт и закачаю вам тёлку с сиськами.

лучше проверяйте это на php, а форму с файлом отправляйте асинхронно.
Ответить с цитированием
  #6 (permalink)  
Старый 19.06.2011, 20:59
Интересующийся
Отправить личное сообщение для alex_89 Посмотреть профиль Найти все сообщения от alex_89
 
Регистрация: 30.04.2011
Сообщений: 23

Ясно, а как быть с проверкой форматов картинок? В чем ошибка моего скрипта, он не пашет ни как!
Ответить с цитированием
  #7 (permalink)  
Старый 19.06.2011, 21:36
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

наткнулся на это :

попробуйье
Цитата:

type=file

Это поле предназначается для вставки в отправляемые данные содержимого файла, имя которого пользователь набирает в текстовом поле. Современные, а тем более графические браузеры отображают рядом с текстовым полем кнопку, при нажатии на которую можно выбрать файл в интерактивном режиме. Для управления шириной и максимальной длинной текста используются атрибуты size и maxlength, также как в type=text. Некоторые браузеры поддерживают ограничение на передачу файлов определенных типов. Список разрешенных типов MIME указывается с помощью атрибута accept.

<input type=file name=mpeg size=40 maxlength=300 accept="video/mpeg">
Ответить с цитированием
  #8 (permalink)  
Старый 19.06.2011, 23:04
Профессор
Отправить личное сообщение для nikita.mmf Посмотреть профиль Найти все сообщения от nikita.mmf
 
Регистрация: 01.02.2010
Сообщений: 364

Я не очень понимаю зачем AciveX...
А вообще проверка должна быть серверной.
А в регурярке у меня действительно ошибка, добавьте модификатор i
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Массовая загрузка изображений ybiza AJAX и COMET 3 15.05.2011 23:02
Загрузка картинок из кукисов KraT Ваши сайты и скрипты 2 25.02.2010 17:42
Загрузка картинок в массив StreG Общие вопросы Javascript 4 25.02.2010 01:36
Загрузка картинок до их отображения HoUsE Элементы интерфейса 6 26.12.2008 12:22
Асинхронная загрузка картинок. Leonid AJAX и COMET 9 13.05.2008 09:33