Regresar a la página www.ComoCrearTuWeb.com
Resultados 1 al 2 de 2

Tema: [Ayuda] Problemas al pasar un json a $.ajax

  1. #1
    Me va gustando esto... Habitante
    Fecha de Ingreso
    10 jun, 11
    Ubicación
    Posadas
    Mensajes
    60
    Poder de Reputación
    10

    Unhappy [Ayuda] Problemas al pasar un json a $.ajax

    Buenas gente, estoy empezando con ajax y tengo un problema al intentar pasar una consulta que hago en php a una pagina html que lo muestra.
    Codigo php que hace la consulta:

    Código PHP:
        public static function traerServicios() {
            
            
    $conexion = new Conexion();
            
    $consulta $conexion->prepare('SELECT * FROM ' self::TABLA ' ORDER BY codigo DESC');
            
    $consulta->execute();
            
    $registros $consulta->fetchAll(PDO::FETCH_ASSOC);
            return 
    $registros;
        } 
    Este es otro archivo que brinda los "servicios" a mi index: el index le pasa una variable por POST y dependiendo del valor de esa variable hace una cosa u otra:
    Código PHP:
    <?php
        header
    ('Content-type: application/json'); 
        
    error_reporting(E_ALL);
        
    ini_set("display_errors"1);
        
    $accion $_POST['accion'];
        
    date_default_timezone_set("America/Buenos_Aires");
        
    $fecha date('Y-m-d');
        include_once 
    '../../php/Servicio.php';

        function 
    imprimirTabla(){
            
    $servicios Servicio::traerServicios();
            echo 
    json_encode($servicios);
        }
        switch(
    $accion){
            case 
    "nuevoServicio":
                
                echo 
    "nuevoServicio";
            break;
            case 
    "######":
                    echo 
    "##########";
            break;
            case 
    "traerServicios":
                
    imprimirTabla();
            break;
        }
    ?>
    y bueno este es mi index que envia la variable al php "servicios" la idea es obtener el Array e imprimir en la tabla pero no lo logro hacer....

    Código HTML:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//ES">
    <html>
        <head>
            <title>#######</title>
            <meta charset="UTF-8">
            <script type='text/javascript' src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
            <script type="text/javascript" language="javascript" src="js/modulos/global.js"></script>
            <link href="css/estilo.css" rel="stylesheet" type="text/css">
            <link href="css/estiloSistema.css" rel="stylesheet" type="text/css">
            <script>
                //////////////////////////LOAD DE TABLA/////////////////////////
                $(function (){
                    var url ="php/servicios/Servicio.php";
                    var tabla ="";
                    $(document).on("ready",function(){
                       $.ajax({
                           type: 'POST',
                           data: 'accion=traerServicios',
                           url: url,
                           dataType: 'json',
                           success: function (data) {
                                res = eval( '(' + data + ')' );
                                
                                alert(res);
                           },
                           error: function(jqXHR, textStatus, error) {
                           alert( "error: " + jqXHR.responseText);
                           }
                       });
                       return false;
                    });
                    $("#btnNuevoServicio").click(function(){
                        $.ajax({
                        type: 'POST',
                        url: url,
                        data: $("#frmNuevoServicio").serialize(),
                        success: function (data) {
                             $("#bodyTabla").html(data);
                        }
                       });
                       return false;
                    });
                    $("#editarServicio").click(function(){
                       alert("fsdkfñlsdfkñsdlfkñdslkfñldskf");
                    });
                    
                    
                })
            </script>
        </head>
        <body>
    el alert(res) que tengo ahi es para ver si imprime algo o si hace algo pero no hace nada... nose en que me estoy equivocando. este es el echo del echo json_encode($servicios);

    [{"codigo":"7","nombre":"gggggggggggg","descripcion ":"gggggggggggggg","fecha":"2014-10-17","usuario":"1","imagen":"sdasdasd"},{"codigo":" 6","nombre":"zxczxczxczx","descripcion":"czxczxczx c","fecha":"2014-10-17","usuario":"1","imagen":"sdasdasd"},{"codigo":" 5","nombre":"wwwwwwwwwwwww","descripcion":"wwwwwww www","fecha":"2014-10-15","usuario":"1","imagen":"sdasdasd"},{"codigo":" 4","nombre":"qweqwewqe","descripcion":"qweqweqwe", "fecha":"2014-10-09","usuario":"1","imagen":"sdasdasd"},{"codigo":" 3","nombre":"uno nuevo","descripcion":"fffffffffffffff","fecha":"20 14-10-09","usuario":"1","imagen":"sdasdasd"},{"codigo":" 2","nombre":"uno nuevo","descripcion":"Este es el nuevo","fecha":"2014-10-09","usuario":"1","imagen":"sdasdasd"},{"codigo":" 1","nombre":"aaaaaaa","descripcion":"sssssssssssss sssssssssssssss","fecha":"2014-10-09","usuario":"1","imagen":"sdasdasd"}]

    La verdad que estoy ya hace un monton de tiempo intentando hacer funcionar esto, si exito aún!
    antes en el archivos de servicio hacien la tabla y la imprimia como String y en el index la recibia asi:
    success: function (data) {
    $.("tabla").html(data)
    }
    y bueno ahi si funcionaba, pero prefiero generar la tabla en el index y no en el archivo de php y por ultimo la consola de firefox me dice esto:
    SyntaxError: missing ] after element list ##########.php:1

    Espero que me puedan ayudar y que haya expresado bien! Saludos! y muchas gracias de antemano! :)

  2. #2
    Esto empieza a ser un vicio... Habitante
    Fecha de Ingreso
    02 may, 11
    Ubicación
    Santiago, Chile
    Mensajes
    2,044
    Poder de Reputación
    21
    Hola!

    Cuando se ejecuta la página, no se ejecuta la función success, ¿pero tampoco la función error de $.ajax?

    Sobre el error que aparece en la consola de Firefox, ¿qué hay en la línea 1 del archivo que menciona?

    Algo que puedes hacer mientras tanto es revisar los registros de error de PHP. [Windows] Si utilizas Xampp, este registro de error debería estar en C:\xampp\php\logs (el archivo se llama php_error_log). Si no existe un registro de error, entonces revisa el registro de apache (C:\xampp\apache\logs). [Linux] Los registros están en /var/apache2/logs o /var/php/logs (depende de tu instalación).

    Si no lo tienes instalado, te recomiendo utilizar Firebug, una extensión para Firefox que tiene más utilidades que sólo consola del mismo.

Temas Similares

  1. JSON php
    Por md5 en el foro Php Bases de Datos y MySQL (Nuevo!)
    Respuestas: 2
    Último Mensaje: 12/06/2012, 23:02
  2. [b]Ayuda:[/b] Pasar objetos a la carpeta del hosting
    Por Gaston_007 en el foro Curso Paso a Paso con Html-Kit.
    Respuestas: 2
    Último Mensaje: 30/04/2010, 13:47
  3. problemas al pasar la carpeta de objetos
    Por yosvga en el foro Foro General
    Respuestas: 2
    Último Mensaje: 15/04/2009, 14:23
  4. Ayuda para pasar tablas a DIVS
    Por aguila_393 en el foro Webs con Capas o DIVS
    Respuestas: 7
    Último Mensaje: 31/05/2008, 14:55

Etiquetas para este Tema

Permisos de Publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •