enviar formulario de varias partes con ajax - enviar archivo y texto
Frecuentes
Visto 309 veces
0
necesito enviar algunos datos y un archivo de imagen con ajax. Sé que debe usar un formulario de varias partes y datos de formulario, pero no sé cómo: lo busqué en Google y encontré alguna forma de enviar el archivo, pero necesito enviar el formulario completo. este es mi formulario html
<form id="formData" enctype="multipart/form-data">
<input type="file" id="uploader" name="image" accept="image/jpg, image/jpeg, image/png, image/bmp, image/raw"/>
<input type="hidden" name="action" id="action" value="receiver"/>
<input type="hidden" name="route" id="route" value="image"/>
</form>
Gracias.
1 Respuestas
0
Espero que algo como esto pueda ser suficiente para ti, amigo... :)
html
//Include this script in head
<script src="http://malsup.github.com/jquery.form.js"></script>
EL jQuery Form Plugin
le permite actualizar formularios HTML de manera fácil y discreta para usar AJAX. Los métodos principales, ajaxForm and ajaxSubmit
, recopile información del elemento de formulario para determinar cómo administrar el proceso de envío. Ambos métodos admiten numerosas opciones que le permiten tener un control total sobre cómo se envían los datos.
<div id='preview'></div>
<form id="imageform" method="post" enctype="multipart/form-data" action='ajaximage.php'>
<input type="file" name="photoimg" id="photoimg" />
</form>
Archivo de comandos
$('#photoimg').on('change', function()
{
$("#imageform").ajaxForm({target: '#preview', //Shows the response image in the div named preview
success:function(){
},
error:function(){
}
}).submit();
});
ajaximage.php
if(isset($_POST) and $_SERVER['REQUEST_METHOD'] == "POST")
{
$name = $_FILES['photoimg']['name'];
$size = $_FILES['photoimg']['size'];
$tmp = $_FILES['photoimg']['tmp_name'];
$path = "uploads/";
move_uploaded_file($tmp, $path.$name) //Stores the image in the uploads folder
}
Puede obtener los valores de campos como action,route
etc usando $_POST
dentro de php
archivo. Para obtener más información, consulte el siguiente enlace, amigo.. :)
Respondido el 02 de diciembre de 13 a las 08:12
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas ajax jquery or haz tu propia pregunta.