Ver Mensaje Individual
  #3 (permalink)  
Antiguo 26/08/2015, 10:11
mikehove
 
Fecha de Ingreso: abril-2012
Ubicación: Argentina
Mensajes: 215
Antigüedad: 12 años
Puntos: 2
Respuesta: Ahorrar código con consulta PHP, JQUERY con buscador AJAX

Hola xfxstudios. Gracias por responderme. Te comento que ya lo había intentado de esa forma. El problema o lo que necesito explicarme bien es que según el permiso de usuario sea otra consulta.

Es decir, si en "redactar.php" el permiso del "Administrador" es:

Código PHP:
Ver original
  1. //Inicio si tiene permiso "Administrador"                    
  2.               if ($_SESSION['miSession']['permiso']=="1")
  3.                  {
  4.            
  5.                  echo "<input type='text' class='search'  id='searchid' name='datosUsuarioDestinatario' placeholder='' style='width:700px;' /><br/>";
  6.  
  7.                  }
  8.               //Fin si tiene permiso "Administrador"

Aquí está su consulta, que es de "search.php" (recordando que desde la página "function.php" hace la llamada por Ajax a "search.php"):

Código PHP:
Ver original
  1. $sql_res=mysql_query("
  2.                     SELECT
  3.                           idUsuario, nombre, apellido, e_mail, idTipoUsuario                  
  4.                         FROM
  5.                           usuario
  6.                         WHERE                                              
  7.                              idUsuario not in (1)
  8.                           AND  
  9.                             (idUsuario LIKE '%$q%'
  10.                             OR
  11.                               nombre LIKE '%$q%'
  12.                             OR
  13.                               apellido LIKE '%$q%'
  14.                             OR
  15.                               e_mail LIKE '%$q%'
  16.                             )                  
  17.                         ORDER BY
  18.                              idUsuario LIMIT 5                      
  19.                    ");
  20. ?>

La cuestión sería reutilizar el código pero en vez de que sea el permiso "Administrador" lo sea para otro usuario como "Gerente" que tendría otra consulta. La consulta sé cual sería pero no se cómo hacer la llamada por Ajax o qué acomodar para que solo pueda, identificando el otro permiso, otra consulta.

El código completo del caso está en el primer post, solo que me faltó colocar una línea (la primera) importante en la página "search.php". Aquí el código completo de "search.php":

Código PHP:
Ver original
  1. $q=$_POST['search'];
  2.  
  3. $sql_res=mysql_query("
  4.                      SELECT
  5.                            idUsuario, nombre, apellido, e_mail, idTipoUsuario                  
  6.                          FROM
  7.                            usuario
  8.                          WHERE                                              
  9.                               idUsuario not in (1)
  10.                            AND  
  11.                              (idUsuario LIKE '%$q%'
  12.                              OR
  13.                                nombre LIKE '%$q%'
  14.                              OR
  15.                                apellido LIKE '%$q%'
  16.                              OR
  17.                                e_mail LIKE '%$q%'
  18.                              )                  
  19.                          ORDER BY
  20.                               idUsuario LIMIT 5                      
  21.                     ");
  22. ?>
  23. <br/>
  24. <?php
  25. while($row=mysql_fetch_array($sql_res))
  26. {
  27. $idUsuario=$row['idUsuario'];
  28. $idTipoUsuario=$row['idTipoUsuario'];
  29. $tipoUsuario=mysql_query("
  30.                     SELECT                          
  31.                           tipUs.idTipoUsuario, tipUs.nombreTipoUsuario                        
  32.                         FROM                          
  33.                           tipoUsuario tipUs
  34.                         WHERE
  35.                           tipUs.idTipoUsuario='$idTipoUsuario'                        
  36.                    ");
  37. $rows=mysql_fetch_array($tipoUsuario);
  38. echo $nombreTipoUsuario=$rows['nombreTipoUsuario'];
  39.    
  40. $username= utf8_encode($row['nombre']);
  41. $userapellido=utf8_encode($row['apellido']);
  42. $email=$row['e_mail'];
  43. $b_username='<strong>'.$q.'</strong>';
  44. $b_userapellido='<strong>'.$q.'</strong>';
  45. $b_email='<strong>'.$q.'</strong>';
  46.  
  47. $final_username = tagHighlight($username, $q);
  48. $final_userapellido = tagHighlight($userapellido, $q);
  49. $final_email = tagHighlight($email, $q);
  50.  
  51. ?>
  52. <div class="show" align="left">
  53. <img src="author.PNG" style="width:50px; height:50px; float:left; margin-right:6px;" /><span class="name" ><?php echo $final_username." ".$final_userapellido;?><?php echo " < ".$final_email. " > idUsuario: ".$idUsuario." - ".$nombreTipoUsuario ?></span>&nbsp;<br/><br/>
  54. </div>


Creo que habría que modificar la consulta en "search.php" pero ya intenté colocándoles las condiciones "if ($_SESSION['miSession']['permiso']=="1")
{}" o "if ($_SESSION['miSession']['permiso']=="2") {}" pero no funciona. Capaz que haya que modificar adonde se hace la llamada desde "function.php" pero en esa materia no lo se, si es agregar algún parámetro para provocar la diferenciación en las llamadas.

Última edición por mikehove; 26/08/2015 a las 10:19