entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

-1voto

Como puedo borrar un registro teniendo el siguiente código escrito?

Como puedo borrar un registro teniendo el siguiente código escrito? tengo el valor de la variable en jQuery (ese valor es del 'id' del registro para tomarlo como referencia en el borrado del registro mySql) he tratado de pasar el valor de la variable de jquery hacia php mediante post pero nada funciona, se que hay que hacerlo por Ajax pero tampoco me ha funcionado.

/* ESTE ES EL CODIO DE JQUERY */

var onswipe = false;
  $('td').swipe({
    swipeRight:function(){
      if(!onswipe){
        onswipe = true;
        $(this).prepend('<tecla>delete</tecla>');
        $('tecla').addClass('boton_borrar');
          $(".boton_borrar").click(function(){

    htmlcaja = $(this).parent().children("caja").html();
    desde = htmlcaja.indexOf("</span>") + "</span>".length;
    hasta = htmlcaja.indexOf("<br"); 
    valueid = htmlcaja.substring(desde,hasta).replace(/ /g,'');

      $.post( "http://waybill.hyeride.com/delete.php?id="+valueid);

     });

      }else{
        $('tecla').remove();
        onswipe = false;
      }
    }
  });

y

/* ESTE ES EL CODIGO PHP (delete.php) */

    <?php 

       $con = include('conexion/conexion.php');   
       $id = $_POST['valueid'];

        $registro = mysql_query("SELECT id FROM waybill WHERE id = '$id'", $con) or die ("connection error". mysql_error());

       if($registro=mysql_fetch_array($registro)){
        mysql_query("DELETE FROM waybill WHERE id='$id'", $con) or die ("connection error". mysql_error());
        echo "se ha eliminado el dato";
       }else{
        echo "problemas al eliminar los datos";
       }

    ?>

1 Respuesta

2votos

carlossevi Puntos63580

Creo que tienes una pequeña confusión entre los conceptos GET y POST de las peticiones HTTP. Una aclacación en este enlace.

Según la URL que has escrito, la petición debe ser GET, por lo que en Javascript la línea tiene que ser:

$.get("http://waybill.hyeride.com/delete.php?id="+valueid);

Mientras que en el PHP debes sustituir $_POST['valueid'] por $_GET['valueid'] para la recogida del valor de los parámetros.

Si quisieras hacerlo vía petición POST tendrías que cambiar el Javscript dejando el PHP como lo tienes ahora:

$.post("http://waybill.hyeride.com/delete.php", { id: valueid });

0voto

chirola30 comentado

De todas maneras antes lo había hecho al revés, pero igualmente no me funciona... hay lo que esta mal pero no se que.

0voto

chirola30 comentado

0voto

carlossevi comentado

Creo que para el PHP que tienes la petición jQuery.post() que te debería servir es:

$.post("http://waybill.hyeride.com/delete.php", { "valueid" : valueid });

0voto

carlossevi comentado

Acabo de hacer la prueba con código real en mi servidor y efectivamente faltaba el entrecomillado en el JSON de los datos a pasar vía post. El código que te pongo en mi comentario anterior debería servir.

0voto

chirola30 comentado

me super sirvio tu codigo gracias! lo que si no se como hacerle para que la lista se vuelva actualizar automaticamente.

0voto

carlossevi comentado

En lugar de recargar la lista puedes eliminar la fila de la tabla cuando recibas la respuesta del servidor comunicando que ha borrado el registro. En el callback de la llama de borrado puedes incluir la línea:

$(this).parent().remove();

Con eso seleccionas el elemento <td>...</td> y su contenido y lo eliminas del HTML.

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta