Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: ajax запрос
Форумы портала PHP.SU » Клиентская разработка » JavaScript & VBScript » ajax запрос

Страниц (1): [1]
 

1. IGORtrue - 27 Августа, 2012 - 09:47:55 - перейти к сообщению
CODE (html):
скопировать код в буфер обмена
  1.  
  2. <center><b><br>
  3.                                                                  Заполните все поля и выберите файл для загрузки.<br>
  4.                                                                                                         Исполнитель <input id="ispol" name="ispol" type="Введите исполнителя!" size="25"  required class="input_add" autofocus><br>
  5.                                                                                                  Композиция &nbsp;  <input id="komp" name="komp" type="Введите название композиции!" size="25"  required class="input_add"><br>
  6.                                                                                                  
  7.                                                                                                          Жанр &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;         
  8.                                                                                                      <select id="genre" name="genre" size="1" class="input_add" required id="s1">
  9.                                                                                                          <option value="Other">Other</option>
  10.                                                                                                      <option value="Alt.Rock">Alt.Rock</option>
  11.                                                                                                          <option value="Classic">Classic</option>
  12.                                                                                                          <option value="Shanson">Shanson</option>
  13.                                                                                                          <option value="Soundtrack">Soundtrack</option>
  14.                                                                                                          <option value="Jazz">Jazz</option>
  15.                                                                                                      <option value="Alternative">Alternative</option>
  16.                                                                                                          <option value="Dance">Dance</option>
  17.                                                                                                          <option value="Electronic">Electronic</option>
  18.                                                                                                          <option value="Pop">Pop</option>
  19.                                                                                                      <option value="Pop-Punk">Pop-Punk</option>
  20.                                                                                                          <option value="Punk">Punk</option>
  21.                                                                                                          <option value="PunkRock">Punk-Rock</option>
  22.                                                                                                          <option value="Rap">Rap</option>
  23.                                                                                                          <option value="R&B">R&B</option>
  24.                                                                                                          <option value="Rock">Rock</option>
  25.                                                                                                          <option value="Drum&Bass">Drum&Bass</option>
  26.                                                                                                          </select>
  27.  
  28.                                                                  <br><br>Выберите файл и нажмите «Загрузить».<br>
  29.                                                                          Размер файла не должен превышать '.$max_size.' бит ('.round($max_size/1024/1024).' Мб).<br>
  30.                                                 Формат файла должен соответствовать mp3.<br>
  31.                                                 <input id="filename" type="file" name="filename" class="input_add" accept="audio/mpeg"><br>
  32.                                                 <input  type="button" class="input_add" value="Загрузить">
  33.                                                                                                  <INPUT type=reset class="input_add" value=Очистить><br>
  34.                                                                  </b></center>
  35.  
  36.  


CODE (javascript):
скопировать код в буфер обмена
  1.  
  2.         <script>
  3.         $(document).ready(function() {
  4. $(".submit").click(function() { // при клике по кнопке
  5. ispol = $("#ispol").val();
  6. komp = $("#komp").val();
  7. genre = $("#genre").val();
  8. filename = $("#filename").val();
  9. /* Отправить в файл методом GET */
  10. $.ajax({
  11.     url: 'upload.php?ispol='+ispol+'&komp='+komp+'&genre='+genre+'&filename='+filename,     // указываем URL
  12.     type : "POST",                     // метод
  13.     beforeSend: function() { $(".load").hide(); $("#loading").fadeIn(); }
  14.     success: function () { $(".load").load("upload.php").slideDown(); $("#loading").fadeOut();    }
  15.     });
  16.   });
  17. });
  18.        
  19.         </script>
  20.  


Подскажите почему не работает ajax-запрос, просто ничего не происходит. Если кнопке указать тип submit, то просто запрос отправляется на туже страницу(index.php).
2. md5ffx - 27 Августа, 2012 - 11:06:25 - перейти к сообщению
у тя нет класса "submit" на который ты привязал обработчик клика
Замени в js .submit на .input_add

и еще параметры в запросе немного подругому нужно отправлять
и нафига это ?
CODE (javascript):
скопировать код в буфер обмена
  1.  success: function () { $(".load").load("upload.php").slideDown(); $("#loading").fadeOut();    }

.load("upload.php")
3. vlom - 27 Августа, 2012 - 11:09:26 - перейти к сообщению
1) пишите что у вас метод пост а урл идет гет
2) как минимум попробуйте так
CODE (javascript):
скопировать код в буфер обмена
  1. $.ajax({
  2. url: 'upload.php',
  3. type : "POST",
  4. dataType: $('form').serialize(),
  5. success: function () { alert('файл загружен') }
  6. })

если используете Google Chrome то откройте консоль и посмотрите что туда выдует работа скрипта, нет ли ни каких ошибок
4. tuareg - 27 Августа, 2012 - 11:12:48 - перейти к сообщению
Файл не загрузить через чистым jQuery. Смотрите плагины
5. IGORtrue - 27 Августа, 2012 - 11:28:13 - перейти к сообщению
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. <script>
  3.         $(document).ready(function() {
  4. $(".input_add").click(function() { // при клике по кнопке
  5. /* Отправить в файл методом GET */
  6. $.ajax({
  7.    $.ajax({
  8. url: 'upload.php',
  9. type : "POST",
  10. dataType: $('form').serialize(),
  11. success: function () { alert('файл загружен'); }
  12. })
  13.     });
  14.   });
  15. });
  16.        
  17.         </script>
  18.  


Так? И форма
Цитата:
<form id="form"></form>

Но ничего не происходит.
6. md5ffx - 27 Августа, 2012 - 11:32:03 - перейти к сообщению
IGORtrue нет
<input type="button" class="input_add" value="Загрузить"> замени на <input id="send-file" type="button" class="input_add" value="Загрузить">
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. <script>
  3.         $(document).ready(function() {
  4. $("#send-file").click(function() { // при клике по кнопке
  5. /* Отправить в файл методом GET */
  6. $.ajax({
  7. url: 'upload.php',
  8. type : "POST",
  9. dataType: $('#form').serialize(),
  10. success: function () { alert('файл загружен'); }
  11. })
  12.     });
  13. });
  14.        
  15.         </script>

примерно так, смотри какие ошибки в консоле будут
7. IGORtrue - 27 Августа, 2012 - 11:38:27 - перейти к сообщению
Ошибок нет, и реакции никакой..
8. md5ffx - 27 Августа, 2012 - 12:23:15 - перейти к сообщению
CODE (javascript):
скопировать код в буфер обмена
  1. <script>
  2.         $(document).ready(function() {
  3. $("#send-file").click(function() { // при клике по кнопке
  4. console.log($(this).val())
  5. /* Отправить в файл методом GET */
  6. $.ajax({
  7. url: 'upload.php',
  8. type : "POST",
  9. dataType: $('#form').serialize(),
  10. success: function () { alert('файл загружен'); }
  11. })
  12.     });
  13. });
  14.        
  15.         </script>
а так что консоль показывает?
9. IGORtrue - 27 Августа, 2012 - 12:28:57 - перейти к сообщению
Я уже нашёл плагин для загрузки, только вот проблема, помогите запихнуть значения input в дополнительные переменные..
Наработка...
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2.  
  3.  
  4.         <script>
  5.         var ispol = document.getElementById('ispol');
  6. var komp = document.getElementById('komp');
  7. var genre = document.getElementById('genre');
  8. new AjaxUpload('upload_button', {action: 'upload.php'});
  9. new AjaxUpload('#upload_button', {
  10.   // какому скрипту передавать файлы на загрузку? только на свой домен
  11.   action: 'upload.php',
  12.   // имя файла
  13.   name: 'filename',
  14.   // дополнительные данные для передачи
  15.   data: {
  16.     ispol : ispol.value,
  17.     komp : komp.value,
  18.         genre : genre.value
  19.   },
  20.   // авто submit
  21.   autoSubmit: true,
  22.   // формат в котором данные будет ответ от сервера .
  23.   // HTML (text) и XML определяются автоматически .
  24.   // Удобно при использовании  JSON , в таком случае устанавливаем параметр как "json" .
  25.   // Также установите тип ответа (Content-Type) в text/html, иначе это не будет работать в IE6
  26.   responseType: false,
  27.   // отправка файла сразу после выбора
  28.   // удобно использовать если  autoSubmit отключен  
  29.   onChange: function(file, extension){},
  30.   // что произойдет при  начале отправки  файла
  31.   onSubmit: function(file, extension) {},
  32.   // что выполнить при завершении отправки  файла
  33.   onComplete: function(file, response) {}
  34. });
  35.         </script>
  36.  
10. md5ffx - 27 Августа, 2012 - 14:26:10 - перейти к сообщению
IGORtrue не понял что вы хотите, но 6 строчка лишняя
11. IGORtrue - 27 Августа, 2012 - 14:34:23 - перейти к сообщению
Вот что у меня получилось, проблема в том, что не совсем корректно работает вызов функции, только после 5 или 6 нажатия на кнопку. И не всегда оправляются данные ispol и komp.

CODE (javascript):
скопировать код в буфер обмена
  1.         <script language="JavaScript">
  2. function addSum()
  3. {
  4.     form = document.getElementById("form");
  5.     ispol = form.ispol.value;
  6.         komp = form.komp.value;
  7.         genre = form.genre.value;
  8.        
  9. new AjaxUpload('#upload_button', {
  10.   // какому скрипту передавать файлы на загрузку? только на свой домен
  11.   action: 'upload.php',
  12.   // имя файла
  13.   name: 'filename',
  14.   // дополнительные данные для передачи
  15.   data: {
  16.     ispol : ispol,
  17.     komp : komp,
  18.         genre : genre
  19.   },
  20.   // авто submit
  21.   autoSubmit: true,
  22.   // формат в котором данные будет ответ от сервера .
  23.   // HTML (text) и XML определяются автоматически .
  24.   // Удобно при использовании  JSON , в таком случае устанавливаем параметр как "json" .
  25.   // Также установите тип ответа (Content-Type) в text/html, иначе это не будет работать в IE6
  26.   responseType: false,
  27.   // отправка файла сразу после выбора
  28.   // удобно использовать если  autoSubmit отключен  
  29.   onChange: function(file, extension){},
  30.   // что произойдет при  начале отправки  файла
  31.   onSubmit: function(file, extension) {},
  32.   // что выполнить при завершении отправки  файла
  33.   onComplete: function(file, response) {}
  34. });  };
  35. </script>


А так же форма
CODE (html):
скопировать код в буфер обмена
  1. <form id="form">
  2.                                                                                                         Исполнитель <input id="ispol" name="ispol" type="Введите исполнителя!" size="25"  required class="input_add" autofocus><br>
  3.                                                                                                  Композиция &nbsp;  <input id="komp" name="komp" type="Введите название композиции!" size="25"  required class="input_add"><br>
  4.                                                                                                  
  5.                                                                                                          Жанр &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;         
  6.                                                                                                      <select id="genre" name="genre" size="1" class="input_add" required id="s1">
  7.                                                                                                          <option value="Other">Other</option>
  8.                                                                                                      <option value="Alt.Rock">Alt.Rock</option>
  9.                                                                                                          <option value="Classic">Classic</option>
  10.                                                                                                          <option value="Shanson">Shanson</option>
  11.                                                                                                          <option value="Soundtrack">Soundtrack</option>
  12.                                                                                                          <option value="Jazz">Jazz</option>
  13.                                                                                                      <option value="Alternative">Alternative</option>
  14.                                                                                                          <option value="Dance">Dance</option>
  15.                                                                                                          <option value="Electronic">Electronic</option>
  16.                                                                                                          <option value="Pop">Pop</option>
  17.                                                                                                      <option value="Pop-Punk">Pop-Punk</option>
  18.                                                                                                          <option value="Punk">Punk</option>
  19.                                                                                                          <option value="PunkRock">Punk-Rock</option>
  20.                                                                                                          <option value="Rap">Rap</option>
  21.                                                                                                          <option value="R&B">R&B</option>
  22.                                                                                                          <option value="Rock">Rock</option>
  23.                                                                                                          <option value="Drum&Bass">Drum&Bass</option>
  24.                                                                                                          </select>
  25.  
  26.                                                                  <br><br>Выберите файл и нажмите «Загрузить».<br>
  27.                                                                          Размер файла не должен превышать '.$max_size.' бит ('.round($max_size/1024/1024).' Мб).<br>
  28.                                                 Формат файла должен соответствовать mp3.<br>
  29.                                                
  30.                                                 <input id="upload_button"  type="button" class="input_add" value="Загрузить" onClick="addSum();" >
  31.                                                                                                  <INPUT type=reset class="input_add" value=Очистить><br>
  32.                                                        </form>
12. md5ffx - 28 Августа, 2012 - 11:15:29 - перейти к сообщению
CODE (javascript):
скопировать код в буфер обмена
  1. new AjaxUpload('#upload_button', {
  2.   // какому скрипту передавать файлы на загрузку? только на свой домен
  3.   action: 'upload.php',
  4.   // имя файла
  5.   name: 'filename',
  6.   // дополнительные данные для передачи
  7.   data: {
  8.     ispol : document.getElementById("form").ispol.value,
  9.     komp :  document.getElementById("form").komp.value,
  10.         genre :  document.getElementById("form").genre.value
  11.   },
  12.   // авто submit
  13.   autoSubmit: true,
  14.   // формат в котором данные будет ответ от сервера .
  15.   // HTML (text) и XML определяются автоматически .
  16.   // Удобно при использовании  JSON , в таком случае устанавливаем параметр как "json" .
  17.   // Также установите тип ответа (Content-Type) в text/html, иначе это не будет работать в IE6
  18.   responseType: false,
  19.   // отправка файла сразу после выбора
  20.   // удобно использовать если  autoSubmit отключен  
  21.   onChange: function(file, extension){},
  22.   // что произойдет при  начале отправки  файла
  23.   onSubmit: function(file, extension) {},
  24.   // что выполнить при завершении отправки  файла
  25.   onComplete: function(file, response) {}
  26. });

замени свой js на это без функции addSum()
и в html убери вызов функции
CODE (html):
скопировать код в буфер обмена
  1.  <input id="upload_button"  type="button" class="input_add" value="Загрузить">

 

Powered by ExBB FM 1.0 RC1