PageRenderTime 39ms CodeModel.GetById 7ms RepoModel.GetById 0ms app.codeStats 0ms

/mycorp2/modules/catalogo/paginar.php

http://cachoncr.googlecode.com/
PHP | 252 lines | 134 code | 108 blank | 10 comment | 21 complexity | 42b12a134fa486d427788cb1f150d205 MD5 | raw file
Possible License(s): LGPL-3.0, ISC, AGPL-3.0, LGPL-2.1, BSD-3-Clause
  1. <?php
  2. //inicializo el criterio y recibo cualquier cadena que se desee buscar
  3. if( !isset ($_REQUEST['rango']) && (!isset ($_REQUEST['nivel']))){
  4. $nivel = ''; //nivel de la busqueda
  5. }elseif (isset ($_REQUEST['nivel'])){
  6. $nivel = $_REQUEST["nivel"];
  7. }else {
  8. $nivel = $_REQUEST["rango"];
  9. }
  10. if( !isset ($_REQUEST['txt_buscar'])){
  11. $txt_criterio = '';
  12. }else {
  13. $txt_criterio = $_REQUEST["txt_buscar"];
  14. }
  15. if (isset($_GET["criterio"])) {
  16. $txt_criterio=$_GET["criterio"];
  17. }
  18. if ( $txt_criterio != ''){ //tomo lo que ingreso en la busqueda
  19. switch ($nivel){
  20. case 1: { $criterio = " where p.id_subrubro=s.id_subrubro and p.id_rubro= r.id_rubro and r.nom_rubro like '%" . $txt_criterio . "%'";
  21. break;
  22. }
  23. case 2: { $criterio = " where p.id_subrubro=s.id_subrubro and p.id_rubro=r.id_rubro and p.id_subrubro in ( select id_subrubro from subrubros where nom_subrubro like '%" . $txt_criterio . "%')";
  24. break;
  25. }
  26. case 3: { $criterio = " where p.id_subrubro=s.id_subrubro and p.id_rubro=r.id_rubro and p.nom_producto like '%" . $txt_criterio . "%'";
  27. break;
  28. }
  29. case 4: { $criterio = " where c.id_rubro=r.id_rubro and c.id_rubro in ( select id_rubro from rubros where nom_rubro like '%" . $txt_criterio . "%')";
  30. break;
  31. }
  32. }
  33. }else {
  34. $txt_criterio = '';
  35. $criterio = "";
  36. }
  37. //Limito la busqueda a 10 paginas
  38. $TAMANO_PAGINA = 1;
  39. //examino la página a mostrar y el inicio del registro a mostrar
  40. if (!isset($_GET["pagina"])) {
  41. $inicio = 0;
  42. $pagina=1;
  43. }
  44. else {
  45. $inicio = ($pagina - 1) * $TAMANO_PAGINA;
  46. }
  47. $conn=mysql_connect("localhost","root","");
  48. mysql_select_db("nea",$conn);
  49. if (!empty ( $criterio ) && $txt_criterio!=' ' ) {
  50. switch ($nivel){
  51. case 1:{ $ssql = "select * from productos p, subrubros s, rubros r".$criterio;
  52. $strselect="SELECT r.nom_rubro, s.nom_subrubro as m, p.nom_producto as nombre, p.imagen, p.caracteristicas FROM productos p, rubros r, subrubros s". $criterio . " limit " . $inicio . "," . $TAMANO_PAGINA;
  53. break;}
  54. case 2:{ $ssql = "select * from productos p, subrubros s, rubros r".$criterio;
  55. $strselect="SELECT r.nom_rubro, s.nom_subrubro as m, p.nom_producto as nombre, p.imagen, p.caracteristicas FROM productos p, rubros r, subrubros s". $criterio . " limit " . $inicio . "," . $TAMANO_PAGINA;
  56. break;}
  57. case 3:{ $ssql = "select * from productos p, subrubros s, rubros r".$criterio;
  58. $strselect="SELECT r.nom_rubro, s.nom_subrubro as m, p.nom_producto as nombre, p.imagen, p.caracteristicas FROM productos p, rubros r, subrubros s". $criterio . " limit " . $inicio . "," . $TAMANO_PAGINA;
  59. break;}
  60. case 4:{ $ssql = "select * from categorias c, rubros r".$criterio;
  61. $strselect="SELECT r.nom_rubro as m, c.nom_categoria as nombre, c.imagen, c.caracteristicas FROM categorias c, rubros r". $criterio . " limit " . $inicio . "," . $TAMANO_PAGINA;
  62. break;}
  63. default : echo "Sin Coincidencias, Intente otra vez </br>";
  64. break;
  65. }
  66. }else
  67. {
  68. switch ($nivel){
  69. // muestra siempre el mismo nombre de nom_rubro y nom_subrubro
  70. case 1:{ $ssql = "select * from productos ";
  71. $strselect="SELECT r.nom_rubro, s.nom_subrubro as m , p.nom_producto as nombre, p.imagen, p.caracteristicas FROM productos p, subrubros s, rubros r where p.id_subrubro=s.id_subrubro and p.id_rubro=r.id_rubro". $criterio . " limit " . $inicio . "," . $TAMANO_PAGINA;
  72. break;}
  73. case 2:{ $ssql = "select * from productos ";
  74. $strselect="SELECT r.nom_rubro, s.nom_subrubro as m , p.nom_producto as nombre, p.imagen, p.caracteristicas FROM productos p, subrubros s, rubros r where p.id_subrubro=s.id_subrubro and p.id_rubro=r.id_rubro". $criterio . " limit " . $inicio . "," . $TAMANO_PAGINA;
  75. break;}
  76. case 3:{ $ssql = "select * from productos ";
  77. $strselect="SELECT r.nom_rubro, s.nom_subrubro as m , p.nom_producto as nombre, p.imagen, p.caracteristicas FROM productos p, subrubros s, rubros r where p.id_subrubro=s.id_subrubro and p.id_rubro=r.id_rubro". $criterio . " limit " . $inicio . "," . $TAMANO_PAGINA;
  78. break;}
  79. case 4:{ $ssql = "select * from categorias ";
  80. $strselect="SELECT r.nom_rubro as m, c.nom_categoria as nombre, c.imagen, c.caracteristicas FROM categorias c, rubros r where c.id_rubro=r.id_rubro". $criterio . " limit " . $inicio . "," . $TAMANO_PAGINA;
  81. break;}
  82. default : echo "Sin Coincidencias, Intente </br>";
  83. break;
  84. }
  85. }
  86. $rs = mysql_query($ssql,$conn);
  87. if (!empty($rs)) {
  88. $num_total_registros = mysql_num_rows($rs);
  89. //calculo el total de páginas
  90. $total_paginas = ceil($num_total_registros / $TAMANO_PAGINA);
  91. $resultado=mysql_query($strselect,$conn);
  92. $myrow=mysql_fetch_array($resultado);
  93. $consulta = mysql_query($strselect);
  94. $totalfilas= mysql_num_rows($consulta);
  95. //Si No hay resultado, muestro un mensaje
  96. If ($totalfilas>0){
  97. echo '<div style="padding: 40px; font-weight: bold; margin: auto">';
  98. echo '<table border=1 >';
  99. echo "<tr>";
  100. $count=0;
  101. while($registro=mysql_fetch_array($consulta)) {
  102. if ($count==0){
  103. if($nivel==1){
  104. echo " BUSQUEDA DE PRODUCTOS CUYO NOMBRE DE RUBRO CONTENGA EL TEXTO: ".$txt_criterio. " </br>";
  105. echo "&nbsp;&nbsp;&nbsp;$registro[nom_rubro]/$registro[m]/$registro[nombre]</br></br>"; //Mostramos la ruta donde se encuentra
  106. }elseif($nivel==2){
  107. echo " BUSQUEDA DE PRODUCTOS CUYO NOMBRE DE SUBRUBRO CONTENGA EL TEXTO: ".$txt_criterio. " </br>";
  108. echo "&nbsp;&nbsp;&nbsp;$registro[nom_rubro]/$registro[m]/$registro[nombre]</br></br>"; //Mostramos la ruta donde se encuentra
  109. }elseif($nivel==3){
  110. echo " BUSQUEDA DE PRODUCTOS CUYO NOMBRE CONTENGA EL TEXTO: ".$txt_criterio. " </br>";
  111. echo "&nbsp;&nbsp;&nbsp;$registro[nom_rubro]/$registro[m]/$registro[nombre]</br></br>"; //Mostramos la ruta donde se encuentra
  112. }elseif($nivel==4){
  113. echo " BUSQUEDA DE CATEGORIAS CUYO NOMBRE DE RUBRO CONTENGA EL TEXTO: ".$txt_criterio. " </br>";
  114. echo "&nbsp;&nbsp;&nbsp;$registro[m]/$registro[nombre]</br></br>"; //Mostramos la ruta donde se encuentra
  115. }
  116. $count++;
  117. }
  118. // $cont++; //USO PARA MOSTRAR EL TOTAL DE REGISTROS NOMAS
  119. echo "<tr align='center'> <td align='center'><img src='modules/catalogo/imagenes/".$registro['imagen']."' width=145 height=100 >";
  120. echo "<td align='center'>$registro[nombre]</td>";
  121. echo "<td align='center'> $registro[caracteristicas] </td> ";
  122. echo "</tr> </br>";
  123. }
  124. echo "<tr>";
  125. echo '</table>
  126. </div>';
  127. } else {
  128. echo " </br> No hay coincidencias";
  129. }
  130. mysql_free_result($rs);
  131. mysql_close($conn);
  132. //muestro los distintos índices de las páginas, si es que hay varias páginas
  133. if ($total_paginas > 1){
  134. for ($i=1;$i<=$total_paginas;$i++){
  135. if ($pagina == $i)
  136. //si muestro el índice de la página actual, no coloco enlace
  137. echo $pagina . " ";
  138. else
  139. //si el índice no corresponde con la página mostrada actualmente, coloco el enlace para ir a esa página
  140. echo "<a href='index.php?mod=catalogo&acc=paginar&pagina=" . $i ."&nivel=".$nivel. "&criterio=" . $txt_criterio . "'>" . $i . "</a> ";
  141. }
  142. }
  143. }
  144. ?>