Foros del Web » Programando para Internet » Jquery »

Problemas con petición ajax, jquery y php

Estas en el tema de Problemas con petición ajax, jquery y php en el foro de Jquery en Foros del Web. Hola a todos! A ver si me podéis ayudar, porque estoy bastante perdida con el ajax y jquery. Cuando el usuario haga clic desde la ...
  #1 (permalink)  
Antiguo 04/09/2014, 08:50
 
Fecha de Ingreso: octubre-2010
Mensajes: 88
Antigüedad: 13 años, 7 meses
Puntos: 1
Problemas con petición ajax, jquery y php

Hola a todos!
A ver si me podéis ayudar, porque estoy bastante perdida con el ajax y jquery.
Cuando el usuario haga clic desde la pag. principal en el enlace de asociados, se deberá cargar la pagina asociados.html con todas las empresas que estén registradas.
Estos datos se deben recuperar de una tabla llamada empresas.

Os muestro el código que tengo implementado en asociados.html

Código:
<!DOCTYPE html>
<html lang="es">
    <head>
        <title>Asociación de comerciantes de Dénia</title>
        <meta charset="UTF-8">           
        <meta content="asociación de comerciantes en denia" name="description">
        <link media="screen" href="estilComer.css" type="text/css" rel="stylesheet">  
        <link rel="stylesheet" type="text/css" media="screen" href="jqgrid/css/ui.jqgrid.css" />
        
        <script type="text/javascript" src="js/ajax.js"></script>
        <script type="text/javascript" src="js/funciones.js"></script> 
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script>
        <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js" type="text/javascript"></script>
        <script src="jqgrid/js/i18n/grid.locale-es.js" type="text/javascript"></script>
        <script src="jqgrid/js/jquery.jqGrid.min.js" type="text/javascript"></script>
    </head>
    <body> 
         <script language="javascript">
           $(document).ready(function(){
           jQuery("#nomemp").jqGrid({
                cache:false,
                data:'todos',    
                url:'Valida.php', 
                datatype:'json',
                mtype:'POST',
                colNames:['ID','RAZONSOCIAL', 'NIF','TELEFONO','DIRECCION', 'WEB'],
                colModel:[
                        {name:'idEmpresa', index:'idEmpresa', width:5, resizable:false, sortable:true},
                        {name:'RazonSocial', index:'RazonSocial', width:150, resizable:false, sortable:true},
                        {name:'nif', index:'nif', width:15,resizable:false},
                        {name:'telefono', index:'telefono', width:15},
                        {name:'direccion', index:'direccion', width:60},
                        {name:'web', index:'web', width:155}
                    ],
                sortname:'RazonSocial',
                sortorder:"asc",
                viewrecords:true,
                caption: 'EMPRESAS'
             });
             
         });
        </script>          
         <div id="cabecera"> 
             <img id ="DibCab" src="images/shopping.png">
             <div id="cabecera-In"></div>
         </div>
          <div class="AllContent">  
            <div id="menu">                
                <ul>
                    <li><a href="ascomDenia.html">Inicio</a></li>
                    <li><a href="login.html">Area privada</a></li>                   
                    <li><a href="#">Asociados</a></li>
                    <li><a href="#">Noticias</a></li>
                    <li><a href="contacto.html">Contacto</a></li> 
                </ul>
            </div>            
                <div id="contenidoIzq">  
                    <h2>Guia de asociados </h2> 
                    <div class="Datos"> 
                        <table id="nomemp"></table>
                    </div>
                </div>              
            </div>
    </body>
</html>
En Valida.php tengo lo siguiente:

Código PHP:
<?php

if (isset($_POST['todos'])){     
     
$varEmpresa = new empresa();
     
$resul $varEmpresa->DevolverEmpresas();
     echo 
$resul;
     }
else
{.....}

class 
empresa{
    
    private 
$fNifEmpresa;
    private 
$razonSocial;
    private 
$direccion;    
    private 
$web;
    private 
$gesBD;
    private 
$tel;
    
   public function 
__Construct()
   {
        require (
"GestionEmpresas.php");
        
$this->gesBD = new GestionEmpresa();
   }
    
   public function 
getNifEmpresa(){return $this->fNifEmpresa;}
   
   public function 
getRazonSocial(){return $this->razonSocial;}

   public function 
DevolverEmpresas()
   {
     return 
$this->gesBD->DevolverTodasEmpresas();
   }
}
Y por útlimo en GestionEmpresas.php lo siguiente:

Código PHP:
<?php

class GestionEmpresa
{
//Configuracion de la conexion a base de datos
    
public static $BD "gescomercios"
    public 
$id_Conection="";
    public 
$NumRegistrosDevueltos=0;
    public 
$identEmpresa="";
    
 function 
__construct()
    {
        
$this->EstablecerConexion();
       
    }
    
   function 
__destruct() {
        
mysql_close($this->id_Conection);
    }
   
//Abrimos conexión
public function EstablecerConexion(){
    
     
$this->id_Conection= @mysql_connect('localhost','root','') or 
                die(
"No se ha podido establecer conexión con la base de datos");
            
mysql_select_db(self::$BD$this->id_Conection);
            
 
}.....
  public function 
DevolverTodasEmpresas()
  {
    
    
$sql"select idEmpresa,razonsocial,telefono,direccion,web from empresa";
    
$result = @mysql_query($sql) or die ("Función DevolverTodasEmpresas: Error al devolver las empresas");
    
$i=0;
    
$respuesta = new stdClass();
    while( 
$fila $result->fetch_assoc() ) {
        
$respuesta->rows[$i]['id']=$fila["idEmpresa"];
        
$respuesta->rows[$i]['cell']=array($fila["idEmpresa"],$fila["razonsocial"],$fila["telefono"],$fila["direccion"],$fila["web"]);
        
$i++;
    }
    echo 
json_encode($respuesta);
    
  }  
}
?>
No me recupera nada, y trazando el código hasta donde he sabido me aparece lo siguiente:

[Exception... "An invalid or illegal string was specified" code: "12" nsresult: "0x8053000c (SyntaxError)" location: "<unknown>"]

y después este otro
TypeError: jQuery(...).jqGrid is not a function

A ver si me podéis ayudar y aconsejar sobre la mejor forma de implementar el código.

Gracias de antemano
  #2 (permalink)  
Antiguo 04/09/2014, 16:32
Avatar de elporfirio  
Fecha de Ingreso: octubre-2013
Mensajes: 37
Antigüedad: 10 años, 6 meses
Puntos: 4
Respuesta: Problemas con petición ajax, jquery y php

Debes de referirte al código de tu Widget o Plugin.

Ya que la estructura AJAX esta dentro del mismo.

.jqGrid()


Además si ocurre un error, lo puedes ver en la consola del navegador, esto para tener mas detalles de tu error por que el código que pasas es inutil sin el resto.


Saludos.
__________________
visita http://elporfirio.com o habrá tabla ¬¬
  #3 (permalink)  
Antiguo 07/09/2014, 08:44
 
Fecha de Ingreso: octubre-2010
Mensajes: 88
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: Problemas con petición ajax, jquery y php

Gracias elporfirio por contestar.

Soy novata en este mundillo, así que no se si la manera en que lo he implementado es la más adecuada y supongo que no lo es por la cara que has puesto, así que te agradecería me orientaras un poco en como debería implementarlo.
  #4 (permalink)  
Antiguo 11/09/2014, 21:11
(Desactivado)
 
Fecha de Ingreso: abril-2013
Ubicación: rosario
Mensajes: 248
Antigüedad: 11 años
Puntos: 17
Respuesta: Problemas con petición ajax, jquery y php

vmelero, consulta, tenes el sitio online? para poder reproducir el error, y otra consulta el archivo Valida.php que vos le asignas al attr url del plugin, esta en la misma carpeta que asociados.html?

Etiquetas: ajax, javascript
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 08:23.