Foros del Web » Programando para Internet » Jquery »

Obtener datos de base de datos con jquery

Estas en el tema de Obtener datos de base de datos con jquery en el foro de Jquery en Foros del Web. hola amigos, estoy tratando de recuperar todos los registros de una base de datos con jquery, lo q quiero hacer es con el metodo $.get ...
  #1 (permalink)  
Antiguo 26/07/2011, 10:03
MCF
 
Fecha de Ingreso: marzo-2008
Mensajes: 126
Antigüedad: 16 años, 8 meses
Puntos: 4
Obtener datos de base de datos con jquery

hola amigos, estoy tratando de recuperar todos los registros de una base de datos con jquery, lo q quiero hacer es con el metodo $.get llamar a una pagina php y esa pagina me regrese en un arreglo todos los registros de una base de datos y luego en la pagina procesarlos con jquery, no se sí eso sea posible o hay otra forma.

muchas gracias por sus respuestas!
  #2 (permalink)  
Antiguo 26/07/2011, 10:18
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 3 meses
Puntos: 1532
Respuesta: Obtener datos de base de datos con jquery

tu mismo te has respondido, con $.get de jquery!!!!, claro que si es posible, a lo sumo con php devuelves los datos en formato JSON o XML
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 26/07/2011, 13:48
MCF
 
Fecha de Ingreso: marzo-2008
Mensajes: 126
Antigüedad: 16 años, 8 meses
Puntos: 4
Respuesta: Obtener datos de base de datos con jquery

cierto cierto muchas gracias como se me pudo pasar el json, pero tengo una pregunta, lei por ahi que eval hace el procesamiento muy lento, hay alguna forma de manejar los datos sin tener que usar eval?
  #4 (permalink)  
Antiguo 26/07/2011, 15:39
MCF
 
Fecha de Ingreso: marzo-2008
Mensajes: 126
Antigüedad: 16 años, 8 meses
Puntos: 4
Respuesta: Obtener datos de base de datos con jquery

hey encontre una funcion parseJSON el problema es que cuando la utilizo me dice que el objeto esta null, pero la respuesta del servidor que esta en json al hacerle un alert sale:

[object Object],[object Object],[object Object]...y asi varias veces, y también al probarlo con la funcion isEmptyObject me dice que no está vacío, pero si lo aplico a la variable despues del parseJSON me dice que está vacio, aquí esta mi codigo:

Código:
setInterval("checar()",2000);

function checar(){
    $.getJSON("resultado.php",cachar);
}

function cachar(reg){
       var registros;
       if($.isEmptyObject(reg)){
        alert("ptm");
       }else{
       alert(reg);
       alert("1 "+reg.nombre);
       registros = $.parseJSON(reg);
       if($.isEmptyObject(registros)){
        alert("doble ptm");
       }else{
       alert(registros);
       alert(registros.nombre);
       }
       }
	}
espero me puedan ayudar
  #5 (permalink)  
Antiguo 26/07/2011, 16:05
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 3 meses
Puntos: 1532
Respuesta: Obtener datos de base de datos con jquery

consulta la API de jQuery $.ajax, ella te permite más opciones como convertir y evaluar automáticamente una respuesta en JSON, pero debes de establecer el content-type en php con header, y si te es posible usar json_encode para generar un JSON válido
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #6 (permalink)  
Antiguo 26/07/2011, 21:29
MCF
 
Fecha de Ingreso: marzo-2008
Mensajes: 126
Antigüedad: 16 años, 8 meses
Puntos: 4
Respuesta: Obtener datos de base de datos con jquery

hola, he buscado pero no entiendo muy bien como evaluar automaticamente la respuesta en JSON, lo que encontre es que con $.getJSON lo hace automaticamente, pero me sigue diciendo que los registros estan indefinidos, pero con $.ajax no he encontrado como evaluarla automaticamente
  #7 (permalink)  
Antiguo 27/07/2011, 08:36
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 3 meses
Puntos: 1532
Respuesta: Obtener datos de base de datos con jquery

me parece que tu error es el JSON mal formado, usa un validador online
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #8 (permalink)  
Antiguo 28/07/2011, 14:31
MCF
 
Fecha de Ingreso: marzo-2008
Mensajes: 126
Antigüedad: 16 años, 8 meses
Puntos: 4
Respuesta: Obtener datos de base de datos con jquery

si estube checando y si recoje bien los datos de la base de datos en el archivo php, pero cuando quiero pasarlos a json creo que es donde esta el error, mira este es el codigo:

Código PHP:
Ver original
  1. <?php
  2. $conexion = mysql_connect("localhost","root","") or die("murio");
  3.  
  4. mysql_select_db("tequila",$conexion) or die("tambien murio");
  5.  
  6. $registro=mysql_query("select nombre from usuario where nuevo = 1",$conexion) or die("no jalo");
  7. while($reg=mysql_fetch_array($registro)){
  8.     $dato[] = $reg;
  9. }
  10.     require('JSON.php');
  11.     $json = new Services_JSON;
  12.     $enco = $json->encode($dato);
  13.     echo $enco;
  14. mysql_close($conexion);
  15. ?>

y lo proceso asi:

Código Javascript:
Ver original
  1. setInterval("checar()",2000);
  2.  
  3. function checar(){
  4.    var pon = $("#pongalo");
  5.    pon.load("resultao.php",cachar)
  6.     return false;
  7. }
  8.  
  9. function cachar(reg){
  10.         var ar = new Array();
  11.         var i;
  12.         var p = $("#pongalo");
  13.         p.text(reg+" | "+reg.length);
  14.         for(i=0; i<reg.length;i++){
  15.             ar[i] = reg[i]['nombre'];
  16.         }
  17.         var str="";
  18.         for(i=0; i<reg.length;i++){
  19.             str = p.text();
  20.             p.text(str+"<br>"+ar[i]);
  21.         }
  22.     }

pero cuando imprimo lo q tiene reg me imprime: [{"0":"Nodmbrehwsdns","nombre":"Nodmbrehwsdns"}]

donde el campo de la base de datos es nombre, y efectivamente tengo esos nombres esos no son error, pero porque es el 0? y porq lo pone 2 veces? y tan sólo ese nombre?

y donde imprimo la longitud de reg me da: 48, donde si tengo varios registros

y cuando quiero imprimir lo que tiene el arreglo ar en cada uno de sus celdas me da: undefined, lo que si hace es ponerlo varias veces

ya no entiendo nada de esto :S :S :S

Última edición por MCF; 28/07/2011 a las 16:22

Etiquetas: $.get, javascript, mysql, php, registros
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 00:01.