¡Hola!
Soy bastante novato en AJAX, así que quizás sea una tontería el error, pero no consigo encontrarlo.
Son dos cosas, uno de enviar datos y otro de eliminarlo, los pongo por separado y explico cada cosa.
El objeto AJAX lo tengo definido de la siguiente forma:
Código Javascript
:
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;
}
Enviar datos vía GET con AJAX
Tengo un código que, debería enviarme datos a la BD, pero no lo hace, aunque me salta el mensaje de confirmación de que si que lo ha hecho. Pongo el código .js y el .php.
La conexión con la BD está hecha en otro documento, ya que este se usa en otro por medio de un include().
Código PHP:
Ver original<?php
if($_GET['act'] == "denunciar")
{
{
echo '<script type="text/javascript">alert("No hay ninguna ID."); history.back();</script>';
}
else
{
mysql_query("INSERT INTO `denunciacoment` (`idcoment`, `autor`) VALUES ('$idcoment','$autor')"); }
}
?>
Código Javascript
:
Ver original// Denunciar comentario con AJAX //
function denunciarcom(id, autor){
//usaremos un cuadro de confirmacion
var denunciar = confirm("¿Está seguro de que desea denunciar el comentario? Si lo hacee, el equipo de la web se encargará de revisarlo y tomar las medidas necesarias.");
if ( denunciar ) {
//instanciamos el objetoAjax
ajax=objetoAjax();
//uso del medotod GET
//indicamos el archivo que realizará el proceso de denuncia
//junto con un valor que representa el id del comentario
ajax.open("GET", "/comentarios.php?act=denunciar&id="+id+"&autor="+autor);
ajax.onreadystatechange=function() {
if (ajax.readyState==4) {
//mostrar resultados en esta capa
alert("Comentario denunciado");
}
}
//como hacemos uso del metodo GET
//colocamos null
ajax.send(null)
}
}
// Denunciar comentario con AJAX //
Borrar datos vía GET con AJAX
En este caso, el problema es igual, solo que en lugar de enviar datos, necesito que los borre.
Código PHP:
Ver original$sqldelete = "DELETE FROM `comentarios` WHERE `id` = '".$_GET['id']."'";
if(mysql_query($sqldelete))
{
?>
<script type="text/javascript">alert("Comentario eliminado"); window.location = "/admin/comentarios.php";</script>
<?php
}
else
{
?>
<script type="text/javascript">alert("Comentario no eliminado"); window.location = "/admin/comentarios.php";</script>
<?php
}
Código Javascript
:
Ver original// Eliminar comentarios con AJAX //
function deletecom(id){
//usaremos un cuadro de confirmacion
var eliminar = confirm("De verdad desea eliminar este comentario?");
if ( eliminar ) {
//instanciamos el objetoAjax
ajax=objetoAjax();
//uso del medotod GET
//indicamos el archivo que realizará el proceso de eliminación
//junto con un valor que representa el id del comentario
ajax.open("GET", "/admin/comentarios.php?act=delete&id="+id);
ajax.onreadystatechange=function() {
if (ajax.readyState==4) {
//mostrar resultados en esta capa
alert("Comentario eliminado");
}
}
//como hacemos uso del metodo GET
//colocamos null
ajax.send(null)
}
}
// Eliminar comentarios con AJAX //
Muchísimas gracias a quien pueda ayudarme, sé que es algo largo de leer.