Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Ayuda: Función en AJAX

Estas en el tema de Ayuda: Función en AJAX en el foro de Frameworks JS en Foros del Web. SOLUCIONADO Buen día gente!, Estuve renegando un buen rato para hacer una función entre Javascript y PHP, y no logré que funcione de manera eficiente. ...
  #1 (permalink)  
Antiguo 03/11/2009, 09:53
 
Fecha de Ingreso: abril-2006
Mensajes: 95
Antigüedad: 18 años, 8 meses
Puntos: 0
Ayuda: Función en AJAX

SOLUCIONADO

Buen día gente!,

Estuve renegando un buen rato para hacer una función entre Javascript y PHP, y no logré que funcione de manera eficiente. Haga demasiadas consultas, la mayoría devuelve gran cantidad de datos para lo que quiero, en fin, no sirve.

Lo que quiero, es que luego de presionar un botón, en el que estoy usando onclick(), llame a una función, enviándole como parámetro el ID de un elemento de la DB, que la función realice la query eliminando el elemento, y refresque la página.

Algo así (este código no funciona, es solo apra mostrar lo que quiero hacer):

Código PHP:
<script type="text/javascript">

function eliminar(ArtistaId)
{
    <?php
    $consulta 
"DELETE FROM d_artista WHERE ArtistaId=" <script>ArtistaId</script> "LIMIT 1";
    $resultado = mysql_query($consulta);
    ?>
    location.reload();
}

</script>
Si alguien me da una mano, estaré muy agradecido!.

Saludos!.

Última edición por elkevin; 04/11/2009 a las 14:21
  #2 (permalink)  
Antiguo 03/11/2009, 13:27
 
Fecha de Ingreso: octubre-2009
Mensajes: 97
Antigüedad: 15 años, 2 meses
Puntos: 4
Respuesta: Ayuda: Función en AJAX

Seria asi
Código:
<script>function eliminar(ArtistaId){
set ajax=new ActiveXObject("msxml2.XMLHTTP");
ajax.open("GET","eliminar.php?ArtistaId="+ArtistaId,false);
ajax.send();
location.reload();}</script>
y la pagina eliminar.php así:
Código:
<?php
$consulta = "DELETE FROM id_artista WHERE ArtistaId=".$GET['ArtistaId'];
$resultado = mysql_query($consulta);
?>
  #3 (permalink)  
Antiguo 03/11/2009, 13:50
 
Fecha de Ingreso: abril-2006
Mensajes: 95
Antigüedad: 18 años, 8 meses
Puntos: 0
Respuesta: Ayuda: Función en AJAX

Muchas gracias por tu respuesta colega!, la puse en práctica, pero no funcionó.

Puse una alerta en la función, para saber si accedia, y eso sucede. Creé el archivo eliminar.php con el trozo de código que me sitaste. No se que puedo estar haciendo mal.

Al darle eliminar a cualquiera de los botones, no ocurre nada, no se abre otra ventana, ni un popup, nada.

Estoy corriendo todo en un servidor en mi equipo montado con AppServer.

Quedo a la espera de tu respuesta!, saludos!.
  #4 (permalink)  
Antiguo 03/11/2009, 14:32
 
Fecha de Ingreso: octubre-2009
Mensajes: 97
Antigüedad: 15 años, 2 meses
Puntos: 4
Respuesta: Ayuda: Función en AJAX

En la página eliminar.php, pon ésto:
Código:
<?php
$consulta = "DELETE FROM id_artista WHERE ArtistaId=".$GET['id'];
$resultado = mysql_query($consulta);
echo 'Se ha borrado lo indicado. Al hacer clic en Aceptar, se actualizara la pagina.'
?>
y en la otra, esto:
Código:
<script language=vbscript>function eliminar(id)
set ajax=createobject("msxml2.XMLHTTP")
ajax.open "GET","aqui-pon-la-ruta-completa-de-tu-sitio-web/eliminar.php?id="&id,false
ajax.send
alert(ajax.responsetext)
location.reload
end function</script>
Si no funciona, me avisas.
Suerte.

Última edición por bebo; 03/11/2009 a las 14:47
  #5 (permalink)  
Antiguo 03/11/2009, 15:01
 
Fecha de Ingreso: abril-2006
Mensajes: 95
Antigüedad: 18 años, 8 meses
Puntos: 0
Respuesta: Ayuda: Función en AJAX

Colega!, otra vez muchas gracias!.

Te comento que intenté hacer lo que me has dicho, pero no funcionó.

Utilicé la función tal y cual me la has dado, y también modifiqué la anterior siguiendo con la idea, quedando así:

Código:
function eliminar(ArtistaId)
{
	alert("Accedió a la función.");
	set ajax=createobject("msxml2.XMLHTTP");
	ajax.open("GET","http localhost/LaMaga Adriel/Buscador Artistas/eliminar.php?ArtistaId="+ArtistaId,false);
	ajax.send();
	alert(ajax.responsetext);
	location.reload();
}
De ningun modo funciona, noté que ni siquiera me da la alerta que coloco dentro de la función.

Que puede estar pasando?.

Gracias, mil gracias!.
  #6 (permalink)  
Antiguo 04/11/2009, 14:03
 
Fecha de Ingreso: octubre-2009
Mensajes: 97
Antigüedad: 15 años, 2 meses
Puntos: 4
Respuesta: Ayuda: Función en AJAX

Copia EXACTAMENTE esto:

pagina.html:
Código:
<html><title>Tu titutlo</title><body>Tu contenido.....
<script language=javascript>function eliminar(elid){
if(confirm("¿Esta seguro de continuar")){
var sitio_web="pon aqui la ruta completa del archivo eliminar.php (virtual) ";
if(confirm('¿Está seguro de ocntinuar?')){
var ajax=new ActiveXObject('msxml2.XMLHTTP');
ajax.open('POST',sitio_web,false);
ajax.send('elid='+elid);
alert(ajax.ResponseText);
location.reload()}else{
alert('Ha elegido no borrar nada')}
}</script>
<a onclick="eliminar('aqui pon el id del artista');return false" href='#'>Eliminar</a>
</body></html>
y en eliminar.php:
Código:
<?php
$resultado = mysql_query("DELETE FROM id_artista WHERE ArtistaId=".$_POST['elid']);
echo 'Se ha borrado lo indicado. Al hacer clic en Aceptar, se actualizara la pagina.'
?>
A mi también se me hace raro que todavía no funcione.
Estoy seguro de que esta vez funciona.
  #7 (permalink)  
Antiguo 04/11/2009, 14:20
 
Fecha de Ingreso: abril-2006
Mensajes: 95
Antigüedad: 18 años, 8 meses
Puntos: 0
Respuesta: Ayuda: Función en AJAX

Mi amigo!, muchísimas gracias por tu ayuda!, no se por que, pero no funciona.

Agradezco mucho tu buena voluntad y predisposición!.

Encontré un ejemplo, en donde hace lo que quiero, y es cuestión de sentarme a analizar bien de que se trata cada función, y aprender un poquito AJAX.

Otra vez muchas gracias!, Saludos!.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:21.