Después de hacer unos cambios me di cuenta que no se esta actualizando la pagina.
Explicando un poco mejor.
Tengo una pagina Index que carga otra pagina (por medio de ajax), en un contenedor de nombre contenidos. Dicha página es la ver_productos_1_1.php.
Esta página tiene un include a otra página (esta pagina ver_1_1.php) que hace lo siguiente:
La pagina ver_1_1.php carga a su vez otra que me agrega los datos (agregacar_1_1.php) en una sesión de PHP (la pagina dos), esta que agrega no tiene echo y la ultima línea es un header a la pagina ver_productos_1_1.php.
Poniendo un poco de código para entender.
Coloco poco código para no marear; si ven que es necesario mas agrego todo.
Pagina ver_productos_1_1.php:
Código PHP:
echo "
<tr bgcolor=\"$color\">
<td>";
include("ver_1_1.php");
El include hace referencia a esta página (ver_1_1.php)
Código PHP:
<html>
<?php if($carro[md5($row['id'])]['identificador']!=md5($row['id'])){?>
<a href="javascript:llamarasincrono('contenidos/agregacar_1_1.php?<?php echo SID ?>&id=<?php echo $row['id'];?>', 'contenidos');">
<img id="estado_compra" src="/imagenes/comprar.gif" border="0" title="Agregar al Carrito"></a>
<?php }else{?>
<a href="javascript:llamarasincrono('contenidos/agregacar_1_1.php?<?php echo SID ?>&id=<?php echo $row['id'];?>', 'contenidos');">
<img id="estado_compra" src="/imagenes/agregado.gif" border="0" title="Agregar al Carrito"></a>
<?php }?>
</html>
Código PHP:
header("Location:<a href='javascript:llamarasincrono('contenidos/ver_productos_1_1.php', 'contenidos');'>");
?>
Código:
// Esta función cargará las paginas function llamarasincrono(url, id_contenedor){ var pagina_requerida = false if (window.XMLHttpRequest) {// Si es Mozilla, Safari etc pagina_requerida = new XMLHttpRequest() } else if (window.ActiveXObject){ // pero si es IE try { pagina_requerida = new ActiveXObject("Msxml2.XMLHTTP") } catch (e){ // en caso que sea una versión antigua try { pagina_requerida = new ActiveXObject("Microsoft.XMLHTTP") } catch (e){} } } else return false pagina_requerida.onreadystatechange=function(){ // función de respuesta cargarpagina(pagina_requerida, id_contenedor) } pagina_requerida.open('GET', url, true) // asignamos los métodos open y send pagina_requerida.send(null) } // todo es correcto y ha llegado el momento de poner la información requerida // en su sitio en la pagina xhtml function cargarpagina(pagina_requerida, id_contenedor){ if (pagina_requerida.readyState == 4 && (pagina_requerida.status==200 || window.location.href.indexOf("http")==-1)) document.getElementById(id_contenedor).innerHTML=pagina_requerida.responseText }
Me doy cuenta que no esta actualizando la pagina ver_productos_1_1.php a traves de la funcion Ajax, si yo actualizo manualmente cambia la imagen perfectamente, el problema para mi esta en que no se devuelve nada a Ajax desde el archivo agregacar_1_1.php; no se a mi; pero expongo para que me puedan dar alguna idea, si tienen alguna otra bienvenida sera, gracias.