PHP - trato de mostrar una tabla en javascript consumiendo un api rest y no me sale nada

 
Vista:
sin imagen de perfil
Val: 135
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

trato de mostrar una tabla en javascript consumiendo un api rest y no me sale nada

Publicado por Rey (74 intervenciones) el 02/10/2018 18:42:26
Metodo para mostrar listado del api rest

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
// GET Todos los clientes
$app->get('/api/clientes', function(Request $request, Response $response){
  $sql = "SELECT * FROM clientes";
  try{
    $db = new db();
    $db = $db->conectDB();
    $resultado = $db->query($sql);
    if ($resultado->rowCount() > 0){
      $clientes = $resultado->fetchAll(PDO::FETCH_OBJ);
      echo json_encode($clientes);
    }else {
      echo json_encode("No existen clientes en la BBDD.");
    }
    $resultado = null;
    $db = null;
  }catch(PDOException $e){
    echo '{"error" : {"text":'.$e->getMessage().'}';
  }
});
 
 
 
// en javascript  trato de mostrar la tabla en php 
 
 
function CargarLista() {
    var cadena = "<table border=0 cellpadding=2 cellspacing=0><tr><th>nombre</th><th>apellidos</th><th>telefono</th><th>email</th></tr>";
    //agregando evento Ajax
    $.ajax({
        type: "GET",
        url: "http://localhost/restfull/public/api/clientes",
        crossDomain: false,
        cache: false,
        contentType: "application/json; charset=utf-8",
        async: false,
        dataType: "json",
        success: function (result) {
            $.each(result, function (i, field) {
                cadena = cadena + "<tr>" + "<td>" + fideld.nombre + "</td><td>" + field.apellidos + "</td><td>" + field.telefono + "</td><td> " + fideld.email + "</td></tr>";
            });
            cadena = cadena + "</table>";
            $("#divLista").append(cadena);
        },
        error: function (result) {
            alert("Ocurrió un problema. Por favor Comuníquese con el administrador del sistema. Gracias.");
        }
    });
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Mauro
Val: 2.761
Oro
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

trato de mostrar una tabla en javascript consumiendo un api rest y no me sale nada

Publicado por Mauro (1036 intervenciones) el 02/10/2018 19:09:03
Por lo que se ve en el PHP parece que puede andar bien... sólo que dependes de un objeto $app que no se ve dónde está definido...

¿Qué framework usas?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 135
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

trato de mostrar una tabla en javascript consumiendo un api rest y no me sale nada

Publicado por Rey (74 intervenciones) el 02/10/2018 19:23:06
el api rest esta hecho con slim y php mysql , trato de consumirlo en apache cordova que esta en visual studio y se emula en el navegador con ripple no se que pasa cuando trato de consumirlo , el api rest esta hecho con slim y php mysql funciona ya esta probado con postman
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 1.071
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

trato de mostrar una tabla en javascript consumiendo un api rest y no me sale nada

Publicado por Yamil Bracho (888 intervenciones) el 02/10/2018 19:45:17
Si usas PHP Slim debes retornar un response->withJson. Seria algo como >

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// GET Todos los clientes
$app->get('/api/clientes', function(Request $request, Response $response) {
	try{
		$db = new db();
		$db = $db->conectDB();
 
		$sql = "SELECT * FROM clientes";
		$resultado = $db->query($sql);
 
		if ($resultado->rowCount() > 0){
			$clientes = $resultado->fetchAll(PDO::FETCH_OBJ);
			$result = $response->withJson($clientes, 200);
		} else {
		   $result = $response->withJson("No existen clientes en la BBDD.", 404);
		}
 
		$resultado = null;
		$db = null;
 
	} catch(PDOException $e){
	    $data = array("error" => array("text" => $e->getMessage());
		$result = $response->withJson($data, 404)
	}
 
	return $result;
});
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 135
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

trato de mostrar una tabla en javascript consumiendo un api rest y no me sale nada

Publicado por Rey (74 intervenciones) el 02/10/2018 20:02:29
intente probar tu codigo y me manda un error aca
1
$data = array("error" => array("text" => $e->getMessage());
Parse error: syntax error, unexpected ';', expecting ')' in C:\xampp\htdocs\restfull\src\rutas\clientes.php on line 25
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 1.071
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

trato de mostrar una tabla en javascript consumiendo un api rest y no me sale nada

Publicado por Yamil Bracho (888 intervenciones) el 02/10/2018 20:09:37
Falto un parentesis...
Tambien puedes escribir :

1
2
$data = array()
$data["error"]  = array("text" => $e->getMessage());
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 135
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

trato de mostrar una tabla en javascript consumiendo un api rest y no me sale nada

Publicado por Rey (74 intervenciones) el 02/10/2018 20:17:51
Modifique y me funciono con postman y en el navegador mostrando el json , pero cuando presiono en apache cordova no muestra la lista
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 1.071
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

trato de mostrar una tabla en javascript consumiendo un api rest y no me sale nada

Publicado por Yamil Bracho (888 intervenciones) el 02/10/2018 20:25:31
Entonces tienes el problema en el codigo javascriot. Imprime en consola lo que esta llegando

success: function (result) {
console.log(result); // o console.log(JSON.stringify(result));
...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 135
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

trato de mostrar una tabla en javascript consumiendo un api rest y no me sale nada

Publicado por Rey (74 intervenciones) el 02/10/2018 20:33:32
me muestra el json del api restful

Array(1)
0: {id: "1", nombre: "rey", apellidos: "romero", telefono: "30016730", email: "[email protected]", …}
length: 1
__proto__: Array(0)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 1.071
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

trato de mostrar una tabla en javascript consumiendo un api rest y no me sale nada

Publicado por Yamil Bracho (888 intervenciones) el 02/10/2018 20:40:43
Entonces revisa esta parte
$.each(result, function (i, field) {
cadena = cadena + "<tr>" + "<td>" + fideld.nombre + "</td><td>" + field.apellidos + "</td><td>" + field.telefono + "</td><td> " + fideld.email + "</td></tr>";

por ejemplo imprime los campos en el loop

$.each(result, function (i, field) {
console.log(field.nombre);
...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 604
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

trato de mostrar una tabla en javascript consumiendo un api rest y no me sale nada

Publicado por Miguel (218 intervenciones) el 02/10/2018 21:00:59
En el JavaScript parece que usas la variable 'fideld' en lugar de 'field':

1
cadena = cadena + "<tr>" + "<td>" + fideld.nombre + "</td><td>" + field.apellidos + "</td><td>" + field.telefono + "</td><td> " + fideld.email + "</td></tr>";
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 135
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

trato de mostrar una tabla en javascript consumiendo un api rest y no me sale nada

Publicado por Rey (74 intervenciones) el 02/10/2018 21:15:27
Gracias por ayudarme todo finalizo excelente
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar