¿hasta donde podre llegar?

hector2c, mi bitacora

jQuery – gestionar una tabla con ajax

with 81 comments

el post original y la idea original, se encuentra en este post que no anda del todo muy bien:

jQuery – agregar y eliminar filas en una tabla

pido mil disculpas, a aquellas personas que comentaron y nunca di una respuesta, este post va por ellos…

la aplicacion a primera vista

este es el segundo post, que genero con un tema relacionado con la gestión de tablas en una sola página mediante ajax. usando jQuery como framework de javascript, jquery.validate para la validación de formularios y jquery.blockUI para el efectos de bloqueo total…

descripción de la aplicación

  • busqueda y orden del listado por ajax
  • agregado, modificación y eliminación de registros por ajax
  • paginación mediante ajax, usando la clase PHPPaging.lib.php, mayor información en http://www.phperu.net, autor MyOkram
  • validación de formulario con jquery.validate, evitamos la duplicación de usuarios
  • tambien se uso jquery.blockUI, para bloquear la pantalla y mostrar una ventana emergente generada con ajax
  • se usaron estilos css, php y mysql

puedes ver el ejemplo corriendo mediante el siguiente enlace.

ver demo | descargar fuente | script sql

tengan en cuenta que la bd que estoy usando se llama pruebas, pueden modificar esas cosillas en el archivo extras/php/conexion.php

por razones de seguridad, e desabilitado la opción eliminar y editar, las activare cuando tenga 5000 registros para tener una mejor paginación, pero pueden descargar el fuente con las opciones habilitadas.

entidad relación usada

la siguiente imagen muestra la entidad relación usada, no es nada del otro mundo, al inicio era solo la tabla persona, pero para hacerla mas real, trabaje con ambas…

agrego el código sql, para que puedan ejecutarla localmente.

CREATE TABLE pais (
ide_pai INTEGER UNSIGNED NOT NULL,
nom_pai VARCHAR(40) NULL,
PRIMARY KEY(ide_pai)
);

CREATE TABLE persona (
ide_per INTEGER UNSIGNED NOT NULL,
ide_pai INTEGER UNSIGNED NOT NULL,
nom_per VARCHAR(60) NULL,
ape_per VARCHAR(60) NULL,
email_per VARCHAR(70) NULL,
fec_reg_per DATETIME NULL,
PRIMARY KEY(ide_per),
INDEX persona_FKIndex1(ide_pai)
);

algunas problemas que podrias encontrar

  • si aparecen trozos de código php, significa que no tienes activada la linea short_open_tag = 1, para eso deberas ingresar a tu php.ini y activarla…
  • si sale el siguiente error: Deprecated: Function ereg() is deprecated in C:\wamp\www\100211_gestionar_tabla_con_ajax\extras\php\PHPPaging.lib.php on line 552, lo mas probable es que estas usando php 5.3 y la funcion ereg() no existe, te recomendaría usar php 5.2 hasta que PHPPaging saque una versión que soporte php 5.3.

si tienes algun otro problema por favor no dudes en escribir…

soporte constante

por favor, les agradeceria postear algun problema, sugerencia, compatibilidad, etc, en este post, para poder pulir el ejemplo, espero sea de su ayuda…

gracias a 3w, RickyMalav, por sus opiniones y ayuda…

: short_open_tag

Written by hector2c

febrero 11, 2010 a 9:54 am

81 respuestas

Subscribe to comments with RSS.

  1. […] jQuery – gestionar una tabla con ajax « ¿hasta donde podre llegar? […]

    • Hola Hector, mira lo he probado y me funciona perfecto pero cuando lo trate de adaptar a una estructura de programacion que tengo no me da error pero solo me muestra las opciones de búsqueda que tiene el index.php teniendo encuenta que mi esctructura de mi index.php principal es este:

      el metodo ejecutarcuerpo me deriba a las respectivas páginas para q la estructura trabaje como frame es decir header,boddy,fooder y en mis enlace le coloco asi:index.php?accion=Opcion2.

      espero me respondas ok. gracias

      Mario Arroyo

      junio 8, 2011 at 9:53 am

  2. muy buena aportacion… lo voy a probar y te cuento q paso

    Richard

    febrero 19, 2010 at 12:02 pm

  3. vakansisimo esto pana… hasta q salio aca en mi makina… y todo funciona bien.. gracias por el apoyo y esas configuraciones q no sabia,

    saludos. desde Ecuador…

    Richard Malavé.

    febrero 19, 2010 at 4:03 pm

  4. Hola, sabes al momento de querer ingresar datos desde internet explorer no actualiza la grilla de datos a mostrar, no muestra datos, otra cosa como hacer para que el block UI se ajuste a las distintas resoluciones de pantalla?
    muchas gracias, espero tu respuesta aqui o a mi correo! saludos!

    Juan Alvarez

    marzo 10, 2010 at 6:05 pm

  5. El problema que tengo es que necesito desarrollar una aplicacion con bases de datos y para esto debo manejar mas de tres formularios y estoy utilizando jquery para lo del ajax y me funciona bien ocultando y mostrando los diferentes formularios y enviando los datos a la base de datos pero el problema es que a partir del tercer formulario con el boton enviar ya no me funciona sobrescribiendo los datos que consulto en un div sino que se regresa al primero y lo raro es que funciona tal como quiero en internet explorer pero yo necesito que funcione también en mozilla y opera por lo menos.

    sebastiancb

    marzo 19, 2010 at 12:03 pm

  6. Excelente aportacion, me gustaria recomendar que se agregara un efecto para que el usuario sepa que esta trabajando y no se quede con la sensacion de que no sucede nada.

    Saludos

    jcltol

    abril 14, 2010 at 10:00 am

  7. disculpa esto es compatible con word press ??? gracias espero respuestas :d

    JuanL23

    abril 17, 2010 at 10:13 am

  8. Hola cuando intento descargar los fuentes de box.net, sale un mensaje de time out, podrias subir los fuentes a otro mirror aparte de box.net ?

    Gracias

    Luis

    abril 24, 2010 at 1:25 am

  9. disculpen por responder a tan largo tiempo:

    @Juan Alvarez: hola, no he tenido problemas con ie7, tal vez en ie6, ocurran problemas en peticiones ajax, sobre el centrado del blockui a cualquier resolución, es configurable con sus valores left y top.

    @sebastiancb: no entiendo muy bien tu problema, pero cuando realizas gran cantidad de peticiones ajax, las funciones repetidas suelen sobreescribir a las funciones ya creadas anteriormente, tambien debes tener en cuenta al momento de importar sus scripts en los ficheros asincronos.

    @jcltol: mmmmm, le agregare el plugin jquery.color y el plugin jquery.gritter, se que les agradara, si podrias nombrar mas propuestas y detallarlas seria eXelente antes de subir una nueva versión.

    @JuanL23: jejejeje, no es un plugin para wordpress T____T, es una propuesta para desarrollar gestores, aplicaciones, usando ajax, y evitar el refresco innecesario de toda la pantalla mediante peticiones ascincronas.

    @Luis: uuuuuy, ahora veo eso !!!, lo subire a skydrive de live.com, espero que no tengas problemas

    pido mil disculpas por no responder a tiempo, ahora reescribire este pequeño ejemplo, añadiendo lo nuevo que he aprendido… mil gracias !!!…

    hector2c

    abril 24, 2010 at 11:48 am

  10. Utilizo xamp y no me corre este ejemplo
    que hago me da este Erro ayuda
    agregarConsulta($sql); $paging->div(‘div_listar’); $paging->modo(‘desarrollo’); if (isset($_GET[‘criterio_mostrar’])) $paging->porPagina(fn_filtro((int)$_GET[‘criterio_mostrar’])); $paging->verPost(true); $paging->mantenerVar(«criterio_usu_per», «criterio_ordenar_por», «criterio_orden», «criterio_mostrar»); $paging->ejecutar(); ?>

    fetchResultado()){ ?>
    xq podria ser este Error.. ayuda

    Manuel

    May 1, 2010 at 11:47 pm

    • Hola amigo, te cuento que yo utilizo xampp y bueno me paso lo mismo que a ti.. lo que tienes que hacer es abrir todos los archivos que tienes en persona y busca todo lo que tenga osea en vez de variable cualquiera que tengas y la reemplazas por esto
      .. si deseas te paso el codigo ya modificado solo escribe..

      Juan Pablo

      May 14, 2010 at 10:48 am

      • Hola, JP, espero que me puedas ayudar, a mi me sale ese mismo error, ademas quiero integrarlo a un sistema con sesiones, me podrias ayudar porfavor…

        Muchas gracias.

        Danilo

        junio 25, 2010 at 2:04 am

      • hola juan porfa si podes pasarme el codigo completo ya q no llego a ejecutar el script ya tengo esto muy bastante tiempo estoy trabajando con el appserver y wampserver y ninguno le da

        wilmer

        agosto 3, 2011 at 6:40 am

      • broter pasame el codigo modifificado de jQuery – gestionar una tabla con ajax porfa nesecito y me parece muy buen aporte desde antes ya te agradesco la respuesta…..john johann

        jhonjohannera

        noviembre 15, 2011 at 8:36 am

    • Manuel, arriba dice que la paging no es compatible con la version php 5.3 verifica tu php haber si es por esto.

      localhost/phpinfo

      lucas

      May 23, 2010 at 4:05 pm

    • A los que les sale este error:

      agregarConsulta($sql); $paging->div(‘div_listar’); $paging->modo(‘desarrollo’); if (isset($_GET[‘criterio_mostrar’])) $paging-
      etc
      etc

      * si aparecen trozos de código php, significa que no tienes activada la linea short_open_tag = 1, para eso deberas ingresar a tu php.ini y activarla…

      Mi php.ini en xampp(windows xp) quedo así:

      ;short_open_tag = Off
      short_open_tag = 1

      Comento con ; la línea anterior e inserto la solución y voila!!

      danis

      octubre 10, 2011 at 9:57 am

  11. hola…uso xammp tambien y me sale el mismo error del amigo que comento antes que yo

    agregarConsulta($sql); $paging->div(‘div_listar’); $paging->modo(‘desarrollo’); if (isset($_GET[‘criterio_mostrar’])) $paging->porPagina(fn_filtro((int)$_GET[‘criterio_mostrar’])); $paging->verPost(true); $paging->mantenerVar(“criterio_usu_per”, “criterio_ordenar_por”, “criterio_orden”, “criterio_mostrar”); $paging->ejecutar(); ?>

    fetchResultado()){ ?>

    francisco

    May 3, 2010 at 12:19 pm

  12. Hola yo tengo el mismo problema que Manuel… eso que significa.

    Me podrian ayuda, Muchas Gracias.

    bernardo

    May 10, 2010 at 10:41 am

  13. tengo un problema con el jquery en las versiones del navegador al aplicar los estilos, en el ie6 e ie7 no me toma los estilos pero en las versiones mas modernas como el ie8, mozilla y chrome me anda impeke, le he dado mil vueltas al problema pero no logro llegar al epicentro del problema :S ojala alguien pueda ayudarme

    de antemano gracias 🙂

    mauricio

    May 10, 2010 at 5:43 pm

  14. Juan Pablo

    May 14, 2010 at 10:50 am

  15. Como estas? he bajado los fuentes y cree las tablas en my bd. Pero al momento de correrlo en mi maquina me sale puros codigos php. busque el archivo php.ini y le cambie lo que sugeriste a ON y nada sigue igual. porfa… es tremendo ejemplo y lo necesito de urgencia.

    Enyelber

    May 15, 2010 at 3:47 pm

    • Listo ya solucione el problema, faltaba reiniciar la maquina, y todo corrio perfectamente

      Enyelber

      junio 11, 2010 at 9:46 am

  16. No es posible descargar el archivo, quizas puedan subirlo a otro servidor yaq me ha sido imposible descargarlo, es muy interesante esta informacion, gracias por el dato!

    dotiniano

    May 17, 2010 at 1:03 pm

  17. Que tal muchas gracias por este grandisimo aporte.

    Una inquietud, como lo puede implementar para que funcione con SQL SERVER 2005? ya que la funcion LIMIT no es entendida en ese gestor y el paggin por consiguiente me arroja error. alguna idea? seran bienvenidas.

    Desde ya muchas gracias!!!

    DavidRoa

    May 21, 2010 at 2:34 pm

  18. Cómo se puede implementar para que funcione tu estupenda aplicación pero con el gestor específico MS SQL Server 2005?

    Te lo pregunto ya que mssql server no conoce la instrucción LIMIT

    Desde ya muchas gracias por todo

    david

    May 22, 2010 at 1:55 pm

  19. Excelente!!!!! El único inconveniente que me surgió es cuando el contenido del layer para cargar o editar una persona es más grande que la pantalla no puedo scrollear para abajo. Me scrollea el fondo y no el layer, sabes como puedo solucionarlo??

    Estoy agregandole un par de funcionalidades, después me gustaría pasartelas por si sirven.

    Gracias.
    KeLo

    Miguel

    junio 2, 2010 at 7:43 pm

  20. Hola, lo primero felicitarte por el trabajo realizado, estaba probandolo y adaptando para una aplicación que me gustaría utilizar y tengo un enorme problema a la hora de insertar los datos en la base de datos, que todo el resto de la web uso iso-8859-1 y en lo tuyo veo que se usa utp-8, mi problema radica en que pese a poner meta al principio de index.php con el iso-8859-1 y eliminar e l@charset «utf-8»; de la hoja de estilos, me sigue guardando mal los datos en la base de datos y me aparecen de esta índole en la página á é à y en la aplicación que uso para ver la base de datos pero sin embargo en la aplicación que tu has creado se me ven perfectamente.

    No se como solucionar este problema y agradecería tu ayuda, un saludo y enhorabuena por el trabajo realizado

    zihon

    junio 30, 2010 at 5:28 pm

  21. Excelente !!!! muchas gracias por el aporte, pero quisiera saber que debo hacer para que deje modificar los regitros. Gracias.

    Hector Ruiz

    junio 30, 2010 at 9:10 pm

  22. Oe tio, no funciona tu ejemplo, tiene muchos errores… no es mejor ponerlo <?php en vez de <?
    ???????????????????????????????

    daniel

    julio 9, 2010 at 6:54 pm

  23. Parece que hay problemas con la codificacion de las eñes en ajaxs.
    Alguien lo solucionó ?
    Saludos y muchas gracias

    Gustavo

    agosto 8, 2010 at 8:24 pm

  24. hola tengo el mismo error como lo solucionaron:

    Utilizo xamp y no me corre este ejemplo
    que hago me da este Erro ayuda
    agregarConsulta($sql); $paging->div(‘div_listar’); $paging->modo(‘desarrollo’); if (isset($_GET[‘criterio_mostrar’])) $paging->porPagina(fn_filtro((int)$_GET[‘criterio_mostrar’])); $paging->verPost(true); $paging->mantenerVar(“criterio_usu_per”, “criterio_ordenar_por”, “criterio_orden”, “criterio_mostrar”); $paging->ejecutar(); ?>

    fetchResultado()){ ?>

    Gracias!

    viviana

    agosto 15, 2010 at 12:52 am

  25. Perdon es wampserver

    viviana

    agosto 15, 2010 at 12:54 am

  26. hola tambien se me presenta el siguiente error, uso es wampserver 2.0.i, como lo puedo solucionar?

    agregarConsulta($sql); $paging->div(‘div_listar’); $paging->modo(‘desarrollo’); if (isset($_GET[‘criterio_mostrar’])) $paging->porPagina(fn_filtro((int)$_GET[‘criterio_mostrar’])); $paging->verPost(true); $paging->mantenerVar(“criterio_usu_per”, “criterio_ordenar_por”, “criterio_orden”, “criterio_mostrar”); $paging->ejecutar(); ?>

    fetchResultado()){ ?>

    Por anticipado muchas gracias.

    viviana

    agosto 18, 2010 at 8:22 am

  27. Hola,

    en la opción de descarga, las funciones fn_agregar o fn_modificar no están incluidas en el index.js

    Saludos y muy bueno el Trabajo!

    Dosmos

    septiembre 2, 2010 at 8:31 am

  28. Saludos Hector, una consulta como puedo hacer para q no me salga error de paginación cuando no tengo registros en la Base de datos

    Mayra

    septiembre 6, 2010 at 5:47 pm

  29. Lo que falta es un campo en la tabla persona.
    usu_per

    Yo lo he puesto varchar 60 not null,y ya va

    nobre

    septiembre 16, 2010 at 10:14 am

  30. Gracias hermano, justo lo que necesito. Tenia 3 días con esto y ya estaba a punto de jalarme los cabellos.

    Zx

    septiembre 24, 2010 at 12:29 pm

  31. Excelente, igual no seria malo si estubiece en postgres :D, bueno a traducir se ah dicho

    Diego

    octubre 5, 2010 at 6:02 pm

  32. hola, como hago para que a un campo (input)
    salga el mensaje de error. (pero diciendo cosas distintas)

    ejemplo: clave invalida, clave menos de 6 digitos, clave solo acepta numeros..

    el validate.js me ganoo 😦
    saludos

    r2

    octubre 7, 2010 at 5:32 pm

  33. Hola a todos, muy buena la implementacion de ajax de jquery, gracias al autor por este aporte para todos nosotros, les queria comentar que si tienen problemas con el codigo y tienen instalado el xampp es porque en algunos archivos inician el php con <? en ves de <?php si les sigue saliendo errores vean cuando muestras los datos por ejem hay archivos que muestran los datos asi lo cual deben de cambiarlo por ahora, si gustan cambiar el ancho y que este centrado el layer que sale al agregar o editar cambie las cantidades del archivo jquery.blockUI.js de sus width y left, espero que les ayude mi comentario.

    Hector, estoy implementando tu codigo en un sistema, pero no me deja subir imagenes le coloque el enctype=»multipart/form-data» a la etiqueta form y no me agrega podria ser el envio de data:str espero tu pronta respuesta

    Miguel Angel

    octubre 18, 2010 at 2:16 pm

  34. Muchísimas gracias por tu aporte. Muy bien explicado, muy claro todo y realmente didáctico. Además lo compartes, lo que es importantísimo.

    Un saludo!

    Marc

    noviembre 18, 2010 at 9:15 am

  35. Hola buenas tardes, felicitaciones por esta creación, funciona a la perfección.

    Felix Utrera

    noviembre 23, 2010 at 12:00 pm

  36. Muy bueno!!
    Solo un pequeño problema. No me funciona la paginacion. La visualizo pero no cambia de pagina. He utilizado otras tablas que tenia. ¿Sabes donde puede estar el problema? El IE me da el siguiente error:

    Mensaje: Permiso denegado
    Línea: 19
    Carácter: 27021
    Código: 0
    URI: ../js/jquery-1.3.2.min.js

    Gracias y un saludo.

    xabi

    noviembre 26, 2010 at 6:16 am

  37. muchas gracias por compartir el tutorial.. bueno tengo el buscar y agregar funcionando muy bien pero no puedo hacer que me modifique y elimine ,,, no se pero no se puede , podrias decirme cual el es error ,,espero tu respuesta 🙂

    junior michael

    diciembre 9, 2010 at 1:49 pm

  38. Hola Che, excelente artículo, podrías subir tus ejemplos a otro hosting, no se puede descargar. Saludos

    Arthur

    diciembre 9, 2010 at 11:55 pm

  39. Hola ! Dando vueltas por internet desde hace ya 2 semanas buscando algo que necesito que no encontraba. hasta hoy..
    me salvaste la vida capo. mi unica duda es como puedo desactivar la funcion de borrar los datos ingresados .. tal como tenes en tu demo. ya que mi idea es que la gente k ingrese al sitio pueda dejar los datos y que se pueda ver. pero sin que ellos puedan borrar.. Desde ya muchas gracias! segui asi.!

    Nicolas

    diciembre 14, 2010 at 1:46 pm

  40. Hola, tengo una duda.

    He logrado hacer funcionar el eliminar y agregar con mis codigos y mi base de datos, pero me queda una duda.

    Me sale «Por favor no altere el fuente» al apretar el icono modificar, pero en mi base de datos, existe ese ide y de hecho cuando paso por arriba del icono me indica como fn_mostrar_frm_modificar(3) o segun el id, pero no logo que se vea el formulario.

    ¿Que puede pasar?

    Tambien me preguntaba que si en algun momento necesitare de la funcion ereg().

    yo

    diciembre 22, 2010 at 6:54 am

  41. Gracias, por compartir el codigo, me gustaria compartir que tambien lo probe con xampp 1.7.2 que trae consigo PHP 5.3 y encontre el siguiente problema que pinta codigo php como error.

    agregarConsulta($sql); $paging->div(‘div_listar’); $paging->modo(‘desarrollo’); if (isset($_GET[‘criterio_mostrar’])) $paging->porPagina(fn_filtro((int)$_GET[‘criterio_mostrar’])); $paging->verPost(true); $paging->mantenerVar(“criterio_usu_per”, “criterio_ordenar_por”, “criterio_orden”, “criterio_mostrar”); $paging->ejecutar(); ?>
    fetchResultado()){ ?>

    Solución:
    En el php.ini cambie el siguiente parametro de off a on. para que reconozca la etiqueta corta «error(true, «El nombre de la variable indicado contiene caracteres no válidos»);

    — en la linea 762 con lo siguiente.–
    if(!preg_match(«/(^[a-zA-Z0-9_ ]+)$/»,$id) or $id === true) return $this->error(true, «El nombre indicado en el método linkClase() es inválido»);

    — en la linea 1141 con lo siguiente.–
    if(!$result) return $this->error(false, @mysql_error(), $sql, preg_match(«/limit[ ]+[0-9]+(,[ ]*[0-9]+)?/», strtolower($sql)));

    Saludos desde Perú

    Referencia del cambio de «ereg» http://devthought.com/2009/06/09/fix-ereg-is-deprecated-errors-in-php-53/

    Alex Torres

    enero 7, 2011 at 7:01 pm

  42. Comentario completo, Gracias, por compartir el codigo, me gustaria compartir que tambien lo probe con xampp 1.7.2 que trae consigo PHP 5.3 y encontre el siguiente problema que pinta codigo php como error.

    agregarConsulta($sql); $paging->div(‘div_listar’); $paging->modo(‘desarrollo’); if (isset($_GET[‘criterio_mostrar’])) $paging->porPagina(fn_filtro((int)$_GET[‘criterio_mostrar’])); $paging->verPost(true); $paging->mantenerVar(“criterio_usu_per”, “criterio_ordenar_por”, “criterio_orden”, “criterio_mostrar”); $paging->ejecutar(); ?>
    fetchResultado()){ ?>

    Solución:
    En el php.ini cambie el siguiente parametro de off a on. para que reconozca la etiquetas cortas .
    short_open_tag = on

    En el arhivo PHPPaging.lib.php cambie las siguientes lineas par reemplazar “ereg” por “preg_match”

    – en la linea 762 con lo siguiente.–

    if(!preg_match(“/(^[a-zA-Z0-9_ ]+)$/”,$id) or $id === true) return $this->error(true, “El nombre indicado en el método linkClase() es inválido”);

    – en la linea 1141 con lo siguiente.–

    if(!$result) return $this->error(false, @mysql_error(), $sql, preg_match(“/limit[ ]+[0-9]+(,[ ]*[0-9]+)?/”, strtolower($sql)));

    Saludos desde Perú

    Referencia del cambio de “ereg” http://devthought.com/2009/06/09/fix-ereg-is-deprecated-errors-in-php-53/

    Alex Torres

    enero 7, 2011 at 7:09 pm

  43. Comentario Super completo, Gracias, por compartir el codigo, me gustaria compartir que tambien lo probe con xampp 1.7.2 que trae consigo PHP 5.3 y encontre el siguiente problema que pinta codigo php como error.

    agregarConsulta($sql); $paging->div(‘div_listar’); $paging->modo(‘desarrollo’); if (isset($_GET[‘criterio_mostrar’])) $paging->porPagina(fn_filtro((int)$_GET[‘criterio_mostrar’])); $paging->verPost(true); $paging->mantenerVar(“criterio_usu_per”, “criterio_ordenar_por”, “criterio_orden”, “criterio_mostrar”); $paging->ejecutar(); ?>
    fetchResultado()){ ?>

    Solución:
    En el php.ini cambie el siguiente parametro de off a on. para que reconozca la etiquetas cortas .
    short_open_tag = on

    En el arhivo PHPPaging.lib.php cambie las siguientes lineas par reemplazar “ereg” por “preg_match”

    – en la linea 551 con lo siguiente.–

    if(!preg_match(«/(^[a-zA-Z0-9]+)$/»,$var)) return $this->error(true, «El nombre de la variable indicado contiene caracteres no válidos»);

    – en la linea 762 con lo siguiente.–

    if(!preg_match(“/(^[a-zA-Z0-9_ ]+)$/”,$id) or $id === true) return $this->error(true, “El nombre indicado en el método linkClase() es inválido”);

    – en la linea 1141 con lo siguiente.–

    if(!$result) return $this->error(false, @mysql_error(), $sql, preg_match(“/limit[ ]+[0-9]+(,[ ]*[0-9]+)?/”, strtolower($sql)));

    Saludos desde Perú

    Referencia del cambio de “ereg” http://devthought.com/2009/06/09/fix-ereg-is-deprecated-errors-in-php-53/

    Alex Torres

    enero 7, 2011 at 7:13 pm

  44. buenas tardes amigo…. disculpa… pero me gustaria poder abarcar mas campos al momento de hacer busquedas… por ejemplo…. que ya no sea solamente busquedas por usuario… sino una busqueda por ID o por fecha, supongo que seria por select list… saludos.. espero tu pronta respuesta te lo agradeceria muchisimo

    laxo

    febrero 3, 2011 at 4:21 pm

  45. Hola revisando tu codigo como podria mandar a llamar este tipo de alertas ya se por otra ventana o mostrarlas en el body o arriba del listado con efecto de setTimeout del jquery o este otro estilo.
    http://beckelman.net/Demos/jQueryAlertDialogs/Default.aspx

    jmacc

    febrero 17, 2011 at 1:39 pm

  46. Hola amigos yo soy nuevo en lo que es el entorno java
    pero algienme puede ayudar con jQuery – gestionar una tabla con ajax y JSP por que alle este aportacion y si cumple con mis espectativas, pero algien me podria dar una mano con administracion en JSP

    Javier

    febrero 24, 2011 at 9:24 am

  47. Hola hector la verdad primeramente te felicito por este aporte es excelente y lo puedo adaptar a mis necesidades pero hasta la fecha no he encontrado un error porque yo tengo un calendario en javascript y llamo ese evento mendiante un boton, al ponerlo en el formulario de agregar o modificar me pinta el boton pero al cliquear me manda un error de funcion, y la verdad no se donde modificarle, ojala me puedas ayudar

    jose carlos

    febrero 25, 2011 at 12:25 pm

  48. Hola mis amigos, soy principiante en JQuery y deseo saber la razón por la que al lanzar un evento de borrado o agregado de un usuario se dispara el evento dos o tres veces…¿qué es lo que está pasando? Por su ayuda les agradeceré mucho.

    Alfer

    febrero 28, 2011 at 5:19 pm

  49. Hola muy buen aporte primero dejame felicitarte por tu nivel de programacion! solo tengo una simple sugerencia tiene algun video tutorial en donde vallas haciendo la aplicacion paso a paso es ke lo kiero probar con otra BD pero nadamas no me sae Gracias y un placer conocer tu sitio.

    David Leon Baeza

    marzo 1, 2011 at 11:29 pm

  50. Tienes un problema en tu página de Demo, así que lo descargo para probar en local…
    Seguro un recurso muy útil para mi y para muchos, Gracias y saludos…

    Vladimir

    marzo 3, 2011 at 10:22 pm

  51. hola donde conseguir el programa para relacionar dos tablas graficamente como el que tienes en el tuto

    juan

    marzo 9, 2011 at 6:50 pm

  52. Muy bueno el ejemplo, corre perfectamente, pero tengo una duda y no he logrado solucionarlo, quisiera modificar la funcion de fn_agregar para que antes de agregar la fila compara que no exista por ejemplo el id a ingresar, la idea es que si creo un usuario con id=1 lo agregue, pero el siguiente usuario como esta el codigo si le pongo id=1 aun asi me lo crea, la idea es que me arroje un mensaje a un campo tipo span y me diga que ya el id se agrego algo asi pero que no me deje repetir datos, espero me entienda y me pueda colaborar muchas grcias

    angus

    marzo 14, 2011 at 11:53 am

  53. Hola podrian ayudarme? no se activan los botones de eliminar y modificar porque el valor de la llave primaria es varchar y he observado que si cambio el dato de la llave primaria a int o sea a numerico se activan los campos, alguien podria ayudarme a solucionar este problema? gracias por su atencion

    donjuancho

    marzo 31, 2011 at 6:45 pm

  54. hola tengo un problema con tu codigo, veras en el agregar intento meterle otros campos y me da error dice que usted no ha llenado todos los datos en mi bd tengo un campo asi fec_reg_per sera por eso q me lanza el msj!!!??

    anonimo

    abril 14, 2011 at 3:13 pm

  55. amigo no puedo hacer andar el código, que tengo que hacer para ponerlo a funcionar, es como que no tuviese conectada la base de datos y la conexión esta bien… pero no me aparece nada

    daniel

    abril 30, 2011 at 9:22 pm

  56. Hola, oye esta muy bueno este tutorial, lo cheke y jalo a la perfeccion, una pregunta esto de gestion de tablas con ajax y jquery tambien funciona si estas utilizando struts2 con paginas jsp ??????????

    Bardock

    May 10, 2011 at 1:54 am

  57. me aparece el siguiente error por que es

    Fatal error: Call to undefined function: mysql_real_escape_string() in c:\program files\easyphp\www\100211_gestionar_tabla_con_ajax\extras\php\basico.php on line 7

    Elizabeth

    May 27, 2011 at 12:07 pm

  58. consulta alguien a tenido problemas con internet explore 6.0

    Elizabeth

    junio 9, 2011 at 9:55 am

  59. hey carnabal mm n me muestra los registros de la base de datos q hago ya me lo movi todo lo q supe pero no alguna idea extra………………….

    Aldo

    junio 21, 2011 at 10:14 am

  60. todos son una bola de grandicimos idiotas

    akuma

    junio 28, 2011 at 4:40 pm

  61. Estimado Amigo..!
    Excelente aporte, mi comentario es a favor de esta forma de compartir conocimientos.! Yo he tomado este ejemplo y lo adapté para hacer aun mas cosas pero me he encontrado con un paso que no he podido resolver. (te envié un correo a la dirección que sale en el ejemplo). Opté por escribirlo aqui:
    http://www.forosdelweb.com/f77/problemas-pasando-dos-parametros-php-ajax-javascript-924200/ y quisiera, si Ud. es tan amable, lo revise y me dé su opinión.!
    Aun en este 2011 este gestor en Jquery funciona a la perfección, eso indica que sus conocimientos trascienden en el tiempo así como lo ha hecho la sabiduría china..! ¿Hasta donde PODREMOS llegar?
    Gracias.!

    Doble_a71

    julio 11, 2011 at 8:33 am

  62. Hola que tal buena tabla yo la quiero agregar a un sistema de noticias queria saber por que me aparecen estos errores saludos…

    Warning: include(/extras/php/conexion.php) [function.include]: failed to open stream: No such file or directory in C:\AppServ\www\Tabla\ajax_listar.php on line 2

    Warning: include() [function.include]: Failed opening ‘/extras/php/conexion.php’ for inclusion (include_path=’.;C:\php5\pear’) in C:\AppServ\www\Tabla\ajax_listar.php on line 2

    Warning: include(/extras/php/basico.php) [function.include]: failed to open stream: No such file or directory in C:\AppServ\www\Tabla\ajax_listar.php on line 3

    Warning: include() [function.include]: Failed opening ‘/extras/php/basico.php’ for inclusion (include_path=’.;C:\php5\pear’) in C:\AppServ\www\Tabla\ajax_listar.php on line 3

    Warning: include(/extras/php/PHPPaging.lib.php) [function.include]: failed to open stream: No such file or directory in C:\AppServ\www\Tabla\ajax_listar.php on line 4

    Warning: include() [function.include]: Failed opening ‘/extras/php/PHPPaging.lib.php’ for inclusion (include_path=’.;C:\php5\pear’) in C:\AppServ\www\Tabla\ajax_listar.php on line 4

    Warning: Cannot modify header information – headers already sent by (output started at C:\AppServ\www\Tabla\ajax_listar.php:2) in C:\AppServ\www\Tabla\ajax_listar.php on line 6

    Warning: Cannot modify header information – headers already sent by (output started at C:\AppServ\www\Tabla\ajax_listar.php:2) in C:\AppServ\www\Tabla\ajax_listar.php on line 7

    Warning: Cannot modify header information – headers already sent by (output started at C:\AppServ\www\Tabla\ajax_listar.php:2) in C:\AppServ\www\Tabla\ajax_listar.php on line 8

    Warning: Cannot modify header information – headers already sent by (output started at C:\AppServ\www\Tabla\ajax_listar.php:2) in C:\AppServ\www\Tabla\ajax_listar.php on line 9

    Fatal error: Class ‘PHPPaging’ not found in C:\AppServ\www\Tabla\ajax_listar.php on line 12

    leo

    agosto 20, 2011 at 12:13 pm

  63. ya pude arreglar eso fue una tonteria mia jaja estoy ciego disculpe tengo error en estos parametros

    //header («Expires: Fri, 14 Mar 1980 20:53:00 GMT»); //la pagina expira en fecha pasada
    //header («Last-Modified: » . gmdate(«D, d M Y H:i:s») . » GMT»); //ultima actualizacion ahora cuando la cargamos
    //header («Cache-Control: no-cache, must-revalidate»); //no guardar en CACHE
    // header («Pragma: no-cache»); //PARANOIA, NO GUARDAR EN CACHE

    leo

    agosto 20, 2011 at 12:27 pm

  64. Exelente ejemplo.

    AYUDA: no logro colocar dentro del popup form ningun tipo de «script calendar» o «jquery calendar» o nada similar. Alguien ha podido insertar algo similar?
    Gracias

    Pablo

    septiembre 7, 2011 at 7:55 am

  65. HOla q tal agradenciendot de antemano por la colaboracion q das
    vera mi problema es el siguiente
    me sale error al insertar y tengo varios datos
    este errore me sale
    Error al insertar a la nueva persona:

    INSERT INTO `caeest_estudi` VALUES (16, 21, ‘12312’, ‘aaa’, ‘aaaaaaaaaaaaaaaaaa’, ‘1989-12-12’, ‘1’, ‘aaa’, ‘aa’, ‘asd’, ‘asd’, ‘asd’, ‘aaa@hot.com’, ‘aa.jpg’, ‘aaa’, now());

    ya pero yo ingreso el cedula , codigo de representante, apellidos, nombres, fecha nacimiento, sexo, direc,.., telef.. nacionali… tipo de snagre, correo .. y foto
    pero no quiere ingresar :S ayuda porfaa

    saisem_m@hotmail.com

    Miguel Moreta

    octubre 18, 2011 at 2:40 am

  66. Hola, tengo una duda.

    He logrado hacer funcionar el eliminar y agregar con mis codigos y mi base de datos, pero me queda una duda.

    Me sale “Por favor no altere el fuente” al apretar el icono modificar, pero en mi base de datos, existe ese ide y de hecho cuando paso por arriba del icono me indica como fn_mostrar_frm_modificar(3) o segun el id, pero no logo que se vea el formulario.

    ¿Que puede pasar?

    Arturo

    octubre 20, 2011 at 12:51 pm

  67. no funciona me da el mismo error que a todos

    agregarConsulta($sql); $paging->div(‘div_listar’); $paging->modo(‘desarrollo’); if (isset($_GET[‘criterio_mostrar’])) $paging->porPagina(fn_filtro((int)$_GET[‘criterio_mostrar’])); $paging->verPost(true); $paging->mantenerVar(«criterio_usu_per», «criterio_ordenar_por», «criterio_orden», «criterio_mostrar»); $paging->ejecutar(); ?> fetchResultado()){ ?>

    carlos

    noviembre 23, 2011 at 1:00 pm

  68. buen aporte! tengo una duda no es del tema pero ojala me ayudes! mira tengo una tabla donde los ids de los tr se repiten ejem:
    aka
    aka
    aka
    aka
    ahora el problema esta en que kiero eliminar todos los tr con id f1 pero me elimina el 1ro que encuentra mi codigo es: $(«#f1»).remove();

    alguna idea… 😦

    magga

    enero 16, 2012 at 6:01 pm

  69. buen aporte! tengo una duda no es del tema pero ojala me ayudes! mira tengo una tabla donde los ids de los tr se repiten ejem:
    aka
    aka
    aka
    aka
    ahora el problema esta en que kiero eliminar todos los tr con id f1 pero me elimina el 1ro que encuentra mi codigo es: $(«#f1»).remove();

    alguna idea… 😦

    sorry x el anterior

    magga

    enero 16, 2012 at 6:08 pm

  70. Cuando ingreso una palabra para buscar con dos caracteres no me devuelve ningun resultado, sin embargo si coloco una sola letra o el nombre completo si lo consigue….Que podria ser??

    Josman

    febrero 2, 2012 at 4:59 pm

  71. Estoy probando el demo y no me sale el boton verde para agregar nuevos registros….

    Joubert

    febrero 22, 2012 at 8:41 am

  72. Ola, de antemano gracias por el aporte, mi unico inconveniente es q cuando agrego un usuario, y despues agrego otros con el mismo nombre de usuario lo agrega normal y no lo valida… stado probando pero no me sale….

    Alexander

    marzo 2, 2012 at 2:08 pm

  73. para poder ajustar la clase PHPPaging.lib.php a mssql se puede ?????

    Amalthea

    marzo 14, 2012 at 6:52 am


Replica a viviana Cancelar la respuesta