Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Fala Galera Imasters.
Bom confesso que não sou nenhum especialista em Jquery, mais dou meus pulos por aqui e sempre estudando com o tempo que sobra... <_<
Tô com uma certa dificuldade aqui e depois de muitas buscas na web, decidi verificar aqui com a comunidade.
Seguinte, tenho um arquivo .html que contém um formulário de cadastro. Através da função $.ajax() do Jquery, é enviado alguns dados via POST para uma arquivo que faz a inserção no Banco de dados. Até aí tudo bem!
Pintou um problema quando precisei enviar junto um arquivo para fazer upload. Vejam o Código:
ARQUIVO HTML
<div id="layout04">
<div id="layout05"> Adicionar Forma de Pagamento</div>
<div id="layout06">
<div id="layout07"><span class="label">Forma de Pagamento:</span></div>
<div id="layout08" style="height:45px;">
<input name="NomeFormaPagamento" type="text" class="form_txt" id="NomeFormaPagamento" value=""/>
</div>
</div>
<div id="line"></div>
<div id="layout06">
<div id="layout07"><span class="label">Ícone:</span></div>
<div id="layout08" style="height:45px;">
<input name="IconeFormaPagamento" type="file" class="form_txt" id="IconeFormaPagamento" accept="gif|png|jpg|pdf"/>
</div>
</div>
</div>
<div id="layout09"><button id="adicionar"><img src="{LAYOUT}images/icon_approve.png"/> Cadastrar Forma de Pagamento</button><button id="cancelar" onclick="javascript: abrirPagina('#forma-pagamento');"><img src="{LAYOUT}images/icon_remove.png" alt="Cancelar"/> Cancelar</button></div>
Ao clicar no Botão com o ID Adicionar é feita esta requisição.
$.ajax({
type : "POST",
url : "handler.php?h=forma-pagamento§ion=adicionar",
data : "NomeFormaPagamento="+$('#NomeFormaPagamento').attr('value')+"&IconeFormaPagamento="+$('#IconeFormaPagamento').attr('value'),
dataType : "html",
success : function(data){$('#alerta').html(data);},
error : function(data){$('#alerta').html(data);}
});
Até aí trankilo. meu problema é o seguinte: Preciso enviar, via post, nesta função o $_FILES['IconeFormaPagamento']['tmp_name'].
Utilizei o seletor para pegar o valor do campo... mais até entaum nada.. alguem me dá uma luz? minha cabeça ta fritando já! ahuahauha
Desde já Obrigadão aí!
Puts! Dessa eu não sabia..
caramba enhi?! fazer oq .. acho que esse SWFUploader aki já me salva!
http://demo.swfupload.org/v220/formsdemo/index.php
Vlws Cambada!
Aí galera!
http://www.phpletter.com/Demo/AjaxFileUpload-Demo/
Recomendo! Atendeu certin aki! Valew pela força pessoal!
Washington,
valeu por ter postado essa contribuição! D:
http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
Não é possível.
Ajax não envia arquivos.
Oque os plugins de 'envio de arquivos' fazem, é criar um iframe(até onde sei), pelo qual submetem o arquivo, sem que o cliente veja.
como em:
http://www.swfupload.org/