Ir al contenido



Foto

soy nuevo me podrian ayudar a una consulta

mysql

  • Por favor identifícate para responder
1 respuesta en este tema

#1 socafe

socafe

    Newbie

  • Miembros
  • Pip
  • 1 mensajes

Escrito 27 enero 2020 - 02:10

hola me podrian ayudar a resolver un error... soy nuevo en estos temas 
quiero hacer consultas multiples en una tabla pero en el siguiente codigo no me lanza ningun error, pero al realizar la busqueda no me arroja nada
 
 
 


php
  1. <?php
  2. ////////////////// CONEXION A LA BASE DE DATOS ////////////////////////////////////
  3.  
  4.  
  5. $host="localhost";
  6. $usuario="root";
  7. $contraseña="usbw";
  8. $base="tesice";
  9.  
  10.  
  11. $conexion= new mysqli($host, $usuario, $contraseña, $base);
  12. if ($conexion -> connect_error)
  13. {
  14. die("Fallo la conexion:(".$conexion -> mysqli_connect_error().")".$conexion-> mysqli_connect_error());
  15. }
  16. ////////////////// VARIABLES DE CONSULTA////////////////////////////////////
  17.  
  18.  
  19. $where="";
  20.  
  21.  
  22. $carrera = (isset($_POST['xcarrera']))? $_POST['xcarrera'] : "xcarrera";
  23. $turno = (isset($_POST['xturno']))? $_POST['xturno'] : "xturno";
  24. $status = (isset($_POST['xstatus']))? $_POST['xstatus'] : "xstatus";
  25. $fecha = (isset($_POST['xfecha']))? $_POST['xfecha'] : "xfecha";
  26. $periodo = (isset($_POST['xperiodo']))? $_POST['xperiodo'] : "xperiodo";
  27.  
  28.  
  29.  
  30.  
  31. ////////////////////// BOTON BUSCAR //////////////////////////////////////
  32.  
  33.  
  34. if (isset($_POST['buscar']))
  35. {
  36.  
  37.  
  38. if (empty($_POST['xcarrera']))
  39. {
  40. $where="WHERE carrera ='".$carrera."'";
  41. }
  42.  
  43.  
  44. else if (empty($_POST['xturno']))
  45. {
  46. $where="WHERE turno='".$turno."'";
  47. }
  48.     
  49.     else if (empty($_POST['xstatus']))
  50. {
  51. $where="WHERE status='".$status."'";
  52. }
  53.     
  54.     else if (empty($_POST['xfecha']))
  55. {
  56. $where="WHERE fecha='".$fecha."'";
  57. }
  58.     
  59.     else if (empty($_POST['xperiodo']))
  60. {
  61. $where="WHERE periodo='".$periodo."'";
  62. }
  63.  
  64.  
  65. else 
  66. {
  67. $where="WHERE carrera '".$carrera."' and turno='".$turno."' and status='".$status."' and fecha ='".$fecha."' and periodo='".$periodo."'";
  68. }
  69. }
  70. ?>
  71. <?php
  72. /////////////////////// CONSULTA A LA BASE DE DATOS ////////////////////////
  73. $alumnos="SELECT * FROM alumnos $where";
  74. $resAlumnos=$conexion->query($alumnos);
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81. if(mysqli_num_rows($resAlumnos)==0)
  82. {
  83. $mensaje="<h2>No hay registros que coincidan con su criterio de búsqueda.</h2>";
  84.     echo $mensaje;
  85. }
  86. ?>
  87.  
  88.  
  89. <!DOCTYPE html>
  90. <html lang="es">
  91.   
  92.   
  93. <body>
  94.     
  95. <section>
  96. <form method="post">
  97.                 
  98. <select  name="xcarrera">
  99.                             <option value="">Carrera </option>
  100. <option value="Administracion">Administracion</option>
  101. <option value="Arquitectura">Arquitectura</option>
  102. <option value="Ing Ambiental">Ing Ambiental</option>
  103.                             <option value="Ing Biomedica">Ing Biomedica</option>
  104.                             <option value="Ing Electronica">Ing Electronica</option>
  105.                             <option value="Ing Informatica">Ing Informatica</option>
  106.                             <option value="Ing Sistemas">Ing Sistemas</option>
  107. </select>
  108.                 
  109.                 
  110.                 
  111.                 <select  name="xturno">
  112.                             <option value="">Turno </option>
  113. <option value="Matutino">Matutino</option>
  114. <option value="Vespertino">Vespertino</option>
  115.  
  116.  
  117. </select>
  118.                 
  119.                 <select  name="xstatus">
  120.                             <option value="">Status </option>
  121. <option value="Activo">Activo</option>
  122. <option value="Egresado">Egresado</option>
  123. <option value="Titulado">Titulado</option>
  124.                             <option value="Baja Temporal">Baja Temporal</option>
  125.                             <option value="Baja Definitiva">Baja Definitiva</option>
  126. </select>
  127.                 
  128.                 <input type="text" placeholder="Año" name="xfecha"/>
  129.                 
  130.                 <select  name="xperiodo">
  131.                             <option value="">Periodo </option>
  132. <option value="1">1</option>
  133. <option value="2">2</option>
  134.  
  135.  
  136. </select>
  137.  
  138.  
  139.  
  140.  
  141. <button name="buscar" type="submit">Buscar</button>
  142.          
  143. </form>
  144.             <br>
  145. <table class="table" >
  146. <tr>
  147. <th>Matricula</th>
  148. <th>Nombre Completo</th>
  149.                     <th>Carrera</th>
  150. <th>Turno</th>
  151. <th>Status</th>
  152. <th>Fecha</th>
  153.                     <th>Periodo</th>
  154. </tr>
  155.  
  156.  
  157. <?php
  158.  
  159.  
  160. while ($registroAlumnos = $resAlumnos->fetch_array(MYSQLI_BOTH))
  161. {
  162.  
  163.  
  164. echo'<tr>
  165. <td>'.$registroAlumnos['matricula'].'</td>
  166. <td>'.$registroAlumnos['nombre_a'].' '.$registroAlumnos['ap_pat_a'].' '.$registroAlumnos['ap_mat_a'].'</td>
  167.                          <td>'.$registroAlumnos['carrera'].'</td>
  168. <td>'.$registroAlumnos['turno'].'</td>
  169.                          <td>'.$registroAlumnos['status'].'</td>
  170.                          <td>'.$registroAlumnos['fecha'].'</td>
  171. <td>'.$registroAlumnos['periodo'].'</td>
  172. </tr>';
  173. }
  174. ?>
  175. </table>
  176.  
  177.  
  178.  
  179.  
  180. </section>
  181. </body>
  182. </html>


  • 0

#2 Delphius

Delphius

    Advanced Member

  • Administrador
  • 6.280 mensajes
  • LocationArgentina

Escrito 27 enero 2020 - 10:46

Buenas noches socafe,

¡Bienvenido a Delphi Access! Esperamos que esta comunidad te sea de buen agrado y se convierta en tu segundo hogar.

 

Admito que no he probado mucho el codigo que expones, pero asi de simple vista noto esto:


php
  1. $alumnos="SELECT * FROM alumnos $where";

En la linea 73. Está mal concatenado. Debería ser:


php
  1. $alumnos = "SELECT * FROM alumnos ".$where;

Y otro detalle más en la línea 67:


php
  1. $where="WHERE carrera '".$carrera."' and turno='".$turno."' and status='".$status."' and fecha ='".$fecha."' and periodo='".$periodo."'";

Está mal armada armada la consulta. Le falta el = después del campo carrera. Debería quedar:


php
  1. $where = "WHERE carrera = '"; // etc...

Por ahora, eso veo. Lo que yo te recomiendo es que hagas un echo de tus consultas, y pruebes copiandola y ejecutando tu mismo en la base de datos. Eso es lo primero que deberías de hacer. Supongo que utilizas phpmyadmin o algún otro utilitario para hacerte más fácil la gestión de la DB.

 

También ten la costumbre de utilizar el die() cuando intentas crear el query:


php
  1. $query = $connexion->query($consulta) or die('Error: '.$connexion->error);

Al menos durante el desarrollo mientras vas codificando.

 

Saludos,


  • 0





Etiquetado también con una o más de estas palabras: mysql