05/05/2014, 09:05
|
| | Fecha de Ingreso: febrero-2010
Mensajes: 6
Antigüedad: 14 años, 9 meses Puntos: 0 | |
Subida multiples archivos y datos con jquery, ajax y php Buenas necesitaba un poco de ayuda con mi codigo porque ya me estoy volviendo loco con este tema, es la primera vez que hago subida de archivos al servidor y e leido bastante por hay pero no consigo dar con la solución. Gracias por adelantado.
html:
<form method="post" name="form_pedir_presu" id="form_pedir_presu" enctype="multipart/form-data">
<table style="width: 100%; margin-top: 20px;">
<tr>
<td>
<table style="width: 100%; background: #E2E5EC; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px;">
<tr><td style="font-size: 14px; font-weight: bold; padding: 10px 0px 0px 10px;">*Nombre:</td></tr>
<tr>
<td style="padding-left: 10px;">
<input type="text" id="nom_cliente" name="nom_cliente" style="width: 282px;">
</td>
</tr>
<tr><td style="font-size: 14px; font-weight: bold; padding: 5px 0px 0px 10px;">*Población:</td></tr>
<tr>
<td style="padding-left: 10px;">
<input type="text" id="pob_cliente" name="pob_cliente" style="width: 282px;">
</td>
</tr>
<tr><td style="font-size: 14px; font-weight: bold; padding: 5px 0px 0px 10px;">*email:</td></tr>
<tr>
<td style="padding-left: 10px;">
<input type="text" id="email_cliente" name="email_cliente" style="width: 282px;">
</td>
</tr>
<tr><td style="font-size: 14px; font-weight: bold; padding: 5px 0px 0px 10px;">Telefono:</td></tr>
<tr>
<td style="padding-left: 10px;">
<input type="text" id="tlf_cliente" name="tlf_cliente" style="width: 282px;">
</td>
</tr>
<tr>
<td style="font-weight: bold; padding: 10px 0px 0px 10px;">Enviar imagen frontal:</td>
</tr>
<tr>
<td style="padding-left: 10px;">
<input type="file" name="archivos[]" id="img_del_cliente">
</td>
</tr>
<tr>
<td style="font-weight: bold; padding: 10px 0px 0px 10px;">Enviar imagen espalda:</td>
</tr>
<tr>
<td style="padding-left: 10px;">
<input type="file" name="archivos[]" id="img_dor_cliente">
</td>
</tr>
<tr>
<td style="font-weight: bold; padding: 10px 0px 0px 10px;">Enviar imagen manga derecha:</td>
</tr>
<tr>
<td style="padding-left: 10px;">
<input type="file" name="archivos[]" id="img_md_cliente">
</td>
</tr>
<tr>
<td style="font-weight: bold; padding: 10px 0px 0px 10px;">Enviar imagen manga izquierda:</td>
</tr>
<tr>
<td style="padding-left: 10px;">
<input type="file" name="archivos[]" id="img_md_cliente">
</td>
</tr>
<tr><td style="padding: 10px 0px 0px 10px;">comentarios:</td></tr>
<tr>
<td style="padding-left: 10px;">
<textarea id="comen_cliente" name="comen_cliente" rows="5" cols="40" style="resize: none;"></textarea>
</td>
</tr>
<tr>
<td style="padding: 15px 0px 10px 10px;">
<input type="button" class="btn_presu_envio" style="width: 223px;" value="Solicitar Presupuesto" onclick="envio()">
</td>
</tr>
</table>
</td>
</tr>
</table>
</form>
funcion jquery:
function envio(){
jQuery(function($) {
if (/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test($('#email_cliente').val()) && $('#nom_cliente').val() != '' && $('#pob_cliente').val() != ''){
var formData = new FormData($('#form_pedir_presu')[0]);
$.ajax({
async:true,
type: "POST",
url: "pedir_presu.php",
data: formData,
cache: false,
contentType: false,
processData: false,
success: function(datos){
if(/Gracias/.test(datos))
$.colorbox({ html: datos, width: '450px', height: '100px'});
else
alert(datos);
},
error: function(objeto, quepaso, otroobj){
//alert("Estas viendo esto por que fallé, pasó lo siguiente: " + quepaso);
alert("Ocurrio un error al generar el email, por favor intentelo de nuevo");
}
});
}
else {
var aux_advertencia = '';
if (!/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test($('#email_cliente').val()))
aux_advertencia += "- La dirección de email es incorrecta.\n";
if ($('#nom_cliente').val() == '')
aux_advertencia += "- Debe introducir un nombre.\n";
if ($('#pob_cliente').val() == '')
aux_advertencia += "- Debe introducir una población.\n";
if (!$("#poli_privacidad").is(':checked'))
aux_advertencia += "- Debe aceptar la política de privacidad para continuar con el proceso.\n";
alert(aux_advertencia);
}
});
} |