Buenas,
Estoy realizando pruebas para insertar datos en una base de datos mediante ajax, todo va bien, pues es sencillo, no es complicado.
El problema ha surjido cuando uno de esos datos es array, concretamente ofrezco la posibilidad de seleccionar (en este caso) varios generos.
Tengo un pequeño form que contiene:
Titulo,
Letra,
Idioma y
Generos
Donde, como he dicho, en generos salen varios checkbox para que el usuario seleccione.
Si yo quito los generos todo me lo sube correctamente, y si los envio sin ajax igual, el problema es que cuando he añadido los generos en el codigo ajax, no me los ha subido y ahora no me sube nada.
Por lo tanto, ¿que hay que hacer en este caso?
Mi codigo ajax es el siguiente:
Código ajax:
Ver originalfunction objetoAjax(){
var xmlhttp=false;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
function enviarDato(){
//donde se mostrará lo resultados
divResultado = document.getElementById('resultado');
//valores de los inputs
titulo=document.nueva.titulo.value;
letra=document.nueva.letra.value;
idioma=document.nueva.idioma.value;
generos=document.nueva.generos.value;
//instanciamos el objetoAjax
ajax=objetoAjax();
//uso del medotod POST
//archivo que realizará la operacion
//registro.php
ajax.open("POST", "procesar.php",true);
ajax.onreadystatechange=function() {
if (ajax.readyState==4) {
//mostrar resultados en esta capa
divResultado.innerHTML = ajax.responseText
//llamar a funcion para limpiar los inputs
LimpiarCampos();
}
}
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//enviando los valores
ajax.send("titulo="+titulo+"&letra="+letra+"&idioma="+idioma+"&generos="+generos)
}
function LimpiarCampos(){
document.nueva_pelicula.titulo.value="";
document.nueva_pelicula.letra.value="";
document.nueva_pelicula.idioma.value="";
document.nueva_pelicula.generos.value="";
document.nueva_pelicula.titulo.focus();
}
Muchas gracias,