Hola.
Primeramente decir que espero que tengan un buen año a todos :D
Ahora vamos a por el "pequeño" problema que tengo.
Estoy haciendo un formulario en el que tengo que subir un fichero al servidor.
Para validar el formulario uso Jquery validate() y posteriormente serialize() para obtener los datos y pasarlos a PHP.
Todo funciona perfectamente salvo cuando llega el momento de usar un input type="file" Para empezar por lo visto serialize() no es capaz de reconocer dichos campos (o eso me ha parecido entender) y no hay manera de conseguir que PHP reciba los datos.
El campo file tiene su respectivo name e id. ¿Hay alguna manera de pasarle los datos a PHP mediante el $.ajax
Os dejo el código aunque es muy sencillo.
Código Javascript
:
Ver original$('#formPrincipal').validate({
rules:{
/* el campo file no tiene regla y como los demás funcionan correctamente lo he limpiado */
},
submitHandler:function(){
var cadena = $('#formPrincipal').serialize();
alert(cadena); /*Simple prueba, posteriormente lo quitaré */
$.ajax({
beforeSend: function(){
},
cache:false,
type: "POST",
dataType: "json",
url:"php/upload.php",
data:cadena + "&t=1&accion=add&idr=" + Math.random(),
success: function(response){},
error:function(){}
});
return false;
},
errorPlacement: function(error, element){
error.appendTo(element.prev("span").append());
}
});
Gracias a todos de antemano.