Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.11.2009, 11:39
Аспирант
Отправить личное сообщение для Simon Посмотреть профиль Найти все сообщения от Simon
 
Регистрация: 25.11.2008
Сообщений: 31

Передать post данные на сервер с проверкой, и успешным завершением
здравствуйте, у меня такой вопрос, для работы с формой сейчас я использую библиотеку JsHttpRequest, проблем ни каких нет, текстовая информация передавалась на ура, также различные файлы тоже.

Но тут решил перейти на jQuery, собственно не могу найти примеров, а нужно всего чтобы можно было передавать данные методом POST, при запросе, клиентский скрипт передавал POST данные на сервер, и уже PHP скрипт делал проверку на переданные данные, в случаи чего, выдавал ошибку к примеру в контейнер <div id="errors"></div>, а во время передачи данных, появлялся индикатор загрузки.
Если данные были успешно переданы, выдавало соответственно сообщение в <div> контейнер.

Последний раз редактировалось Simon, 28.11.2009 в 11:41.
Ответить с цитированием
  #2 (permalink)  
Старый 28.11.2009, 12:32
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

Первая же ссылка в Google по запросу jQuery forms приводит к ответу.
Ответить с цитированием
  #3 (permalink)  
Старый 28.11.2009, 13:58
Аспирант
Отправить личное сообщение для Simon Посмотреть профиль Найти все сообщения от Simon
 
Регистрация: 25.11.2008
Сообщений: 31

спасибо, про этот плагин я знаю, но забыл про него упомянуть, хотел как раз по нему и задать вопрос, вообще зачем он нужен? разве без него jQuery не справится?

сейчас на гуглил, и нашёл вот что
http://www.bitrepository.com/a-simpl...alidation.html

именно то что нужно, проверка полей производится на сервере, я вообще стороник клиентской проверки. Единственное на этом сайте нет загрузки файла, архив скачал, буду пробовать. Хочу заметить, этот пример не использует плагин jQuery Form
Ответить с цитированием
  #4 (permalink)  
Старый 29.11.2009, 00:02
Аспирант
Отправить личное сообщение для Simon Посмотреть профиль Найти все сообщения от Simon
 
Регистрация: 25.11.2008
Сообщений: 31

ну кто ответит?
Ответить с цитированием
  #5 (permalink)  
Старый 29.11.2009, 00:20
Аватар для Riim
Рассеянный профессор
Отправить личное сообщение для Riim Посмотреть профиль Найти все сообщения от Riim
 
Регистрация: 06.04.2009
Сообщений: 2,379

Сообщение от Simon
я вообще стороник клиентской проверки
на сервере все равно надо дублировать все проверки. Эт я так, напомнил, а то вдруг вы не в курсе.
Ответить с цитированием
  #6 (permalink)  
Старый 29.11.2009, 20:21
Аспирант
Отправить личное сообщение для Simon Посмотреть профиль Найти все сообщения от Simon
 
Регистрация: 25.11.2008
Сообщений: 31

так я и грю что стороник клиентской проверки, серверная проверка должна быть обязательно. Я сейчас проверил, оказывается по той ссылке что приводил на форму, там можно только отправлять текст, а вот файл не видит, что нужно для этого не подскажите?
Ответить с цитированием
  #7 (permalink)  
Старый 30.11.2009, 19:45
Интересующийся
Отправить личное сообщение для colonel Посмотреть профиль Найти все сообщения от colonel
 
Регистрация: 30.11.2009
Сообщений: 24

Посмотрите вот этот плагин. Его легко можно изменить под свои нужды, в том числе и проверять файлы можно по размеру и расширению.
Ответить с цитированием
  #8 (permalink)  
Старый 01.12.2009, 05:34
Аспирант
Отправить личное сообщение для Simon Посмотреть профиль Найти все сообщения от Simon
 
Регистрация: 25.11.2008
Сообщений: 31

ага спасибо, только вчера гуглил, и попал на этот сайт, смотрел пример, но я не очень ещё разбираюсь, вот хотел спросить, можно совмещать, отправлять данные допустим поля <input type="text"> вместе с файлом? есть где пример?
Ответить с цитированием
  #9 (permalink)  
Старый 01.12.2009, 11:17
Интересующийся
Отправить личное сообщение для colonel Посмотреть профиль Найти все сообщения от colonel
 
Регистрация: 30.11.2009
Сообщений: 24

Сообщение от Simon
ага спасибо, только вчера гуглил, и попал на этот сайт, смотрел пример, но я не очень ещё разбираюсь, вот хотел спросить, можно совмещать, отправлять данные допустим поля <input type="text"> вместе с файлом? есть где пример?
Конечно же можно. Вот Вам пример кода, который отвечает за загрузку файла на сервер:
Файл index.php
.....
<input type="button" name="ulpoad_file" id="ulpoad_file" value="Обзор" width="102" height="34" class="button">&nbsp;
<span id="ulpoad_file_text"></span>
<input type="hidden" name="ulpoaded_file" id="ulpoaded_file">
.....

.....
new AjaxUpload('#ulpoad_file', 
{
 action: '/upload.php',
 name: 'userfile',
 autoSubmit: true,
 responseType: false,
 onChange: function(file, extension){},
 onSubmit: function(file , ext)
 {
   if(!(ext && /^(jpg|png|jpeg|gif)$/.test(ext)))
   {
    alert('Ошибка: Вы можете загружать только графические файлы с расширением: jpg|png|jpeg|gif.');
    return false;
   }
   this.disable();
  },
  onComplete: function(file, response)
  {
   $("#ulpoaded_file").val(file);
   var str = response.split("|");
   if(str[0] == "1") $("#ulpoad_file_text").addClass("green");
   if(str[0] == "0") $("#ulpoad_file_text").addClass("red");
   $("#ulpoad_file_text").html(str[1]);
  }
});
.....

Файл upload.php
if(!empty($_FILES))
{
 $uploaddir = $_SERVER['DOCUMENT_ROOT'] . '/uploads/';
 if($_FILES['userfile']['size'] >= 2000000) {echo "0|Файл не должен быть больше 2Мб.";}
 else
 {
  if(move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir . $_FILES['userfile']['name'])) {echo "1|Файл " . "\"" . $_FILES['userfile']['name'] . "\"" . " успешно загружен";}
  else {echo "0|Произошла ошибка при загрузке файла " . "\"" . $_FILES['userfile']['name'] . "\"";}
 }
}

Опять же, его можно изменить под Ваши нужды и добавить сюда необходимые данные (<input>) для отправки.

Удачи Вам.
Ответить с цитированием
  #10 (permalink)  
Старый 01.12.2009, 20:18
Аспирант
Отправить личное сообщение для Simon Посмотреть профиль Найти все сообщения от Simon
 
Регистрация: 25.11.2008
Сообщений: 31

спасибо за пример, но это немного не то, нужно чтобы одновременно отправлялись данные в месте с картинками. Просто задача какая, делаю размещение новостей, есть форма, заголовок, большой текст, и выбор загрузки фото, и ниже кнопка отправить, при нажатии на которую, данные должны быть переданы скрипту, при этом, должна сработать серверная проверка, в случаи ошибок, о не правильном заполнении данных, вывести сообщение, если всё нормально, сохраняем, и выводим сообщение об успешном сохранении, и скрыть форму. Есть у кого примеры?
На JsHttpRequest всё это делалось без проблем
Ответить с цитированием
Ответ


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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
HttpProxy не отсылает данные метеодом POST kostiaGt ExtJS 2 05.11.2009 17:36
POST-запрос. Передать данные. Jurasmi jQuery 2 30.09.2009 14:57
Узнать keywords и передать на сервер azgard Общие вопросы Javascript 3 30.04.2009 14:42