Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   jQuery ajax аплоад файлов (https://javascript.ru/forum/jquery/3649-jquery-ajax-apload-fajjlov.html)

x-yuri 13.05.2009 10:59

1) one-click upload: читаем документацию
2) ajaxSubmit: что говориться в сообщении об ошибке?
3)
Цитата:

ммм ... а такой вариант?
ты просто пробуешь разные варианты, не пытаясь понять, как его использовать
4) зачем тебе и jquery form и one-click upload?
5) что ты вообще пытаешься сделать? Для upload'а файлов на сервер javascript не нужен

frstua 13.05.2009 11:34

Угу, не полностью понимаю как это всё реализовать(
Итак, задача.
Нужно загрузить на сервер файл, для этого файла указать некоторое описание и указать некоторую категорию. файл может быть большой. и пока будет происходить загрузка файла, нужен прогресбар Загрузка.

x-yuri 13.05.2009 11:46

http://plugins.jquery.com/
ключевые слова upload progress

x-yuri 13.05.2009 11:53

есть, кстати, такая штука - http://swfupload.org/

frstua 13.05.2009 12:25

видеть, сколько осталось, не обязательно. да и флеш не желательно.
меня устраивает вариант с ocupload.
но опять же, при выборе файла происходит автосабмит, хотя
autoSubmit: false.
$(document).ready(function() { 
    var options = { 
        beforeSubmit:  showRequest,  // pre-submit callback 
        success:       showResponse  // post-submit callback 
    }; 
	var myUpload = $(upload).upload({
        name: 'file',
        action: 'post.php',
        enctype: 'multipart/form-data',
        autoSubmit: false
	});
	popupStatus = 0;
	$('#formadd').submit(function() { 
        $(this).ajaxSubmit(options); 
        return false; 
    }); 
	}); 

function showRequest(formData, jqForm, options) { 
    var queryString = $.param(formData); 
    alert('About to submit: \n\n' + queryString); 
	centerPopup();
	loadPopup();
	return true; 
	} 
function showResponse(responseText, statusText)  { 
	disablePopup();
    alert('status: ' + statusText + '\n\nresponseText: \n' + responseText); 
	}


я ж не сложного хочу, но никак не пойму, что не так делаю

x-yuri 13.05.2009 13:42

тебе же нужен progress bar: где написано, что он есть в one-click upload?

по поводу автосабмита: ты документацию читал? Там все написано

зачем ты используешь ajaxSubmit? Пытайся понять, что ты делаешь, это полезно ;)

frstua 13.05.2009 14:22

переделал.
function FormClick () {
  centerPopup();
  loadPopup();
  var str = $("#formadd").serialize();
  $.post("post.php", str, function(data) {
    disablePopup();
	alert('status: ' + data);
  });
}

HTML
<FORM action="post.php" method="post" enctype="multipart/form-data" name="formadd" id="formadd">
<INPUT type="file" name="file">    
<INPUT type="button" name="add" value="Add" onclick="FormClick(); return false">
</FORM>

PHP
<?php
 sleep (3);
 echo $_FILES['file']['name'];
?>

возвращает ничего

x-yuri 13.05.2009 14:45

давай ты начнешь с того, что спросишь, что тебе непонятно в твоем коде? Потом ты сам сможешь ответить, почему оно ничего не возвращает

frstua 13.05.2009 14:47

в коде из последнего поста всё понятно. любые другие параметры передаются. а файл нет.

x-yuri 13.05.2009 14:51

...
  var str = $("#formadd").serialize();
alert(str);
  $.post("post.php", str, function(data) {
...

что выдает alert?


Часовой пояс GMT +3, время: 10:24.