elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  busqueda cuelga conexión pagina
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: busqueda cuelga conexión pagina  (Leído 4,297 veces)
kakashi20


Desconectado Desconectado

Mensajes: 435


Ver Perfil
busqueda cuelga conexión pagina
« en: 21 Enero 2014, 16:11 pm »

hola

tengo esta búsqueda de info de mysql por medio de ajax.

El problema es que al hacer esta búsqueda de manera exhaustiva, osea, cuando estoy buscando muchos productos y escribiendo muchos nombre, la conexión de la pagina se cuelga y aparece en el navegador google chrome que se ha perdido la conexión con la pagina.

no se porque pasa esto.

si alguien me pudiese ayudar se lo agradeceria.

Form Búsqueda:



Código
  1. <table border='0' width='348px'>
  2. <tr height="50px">
  3. <td colspan='2' align='center' style="font-size:14px; font-weight:bold">Busqueda Productos</td>
  4. </tr>
  5.  
  6. <tr>
  7. <td width='50%' align="right">Nombre:</td>
  8. <td>
  9.                   <input type="text" name="nom" id="nom" onkeyup="BuscarProducto()" />
  10.                </td>
  11. </tr>
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20. </table>
  21.  
  22.  
  23. </form>
  24.  
  25. <div id="result" style="border:0px solid #F00; width:1000px"></div>






Ajax:




Código
  1. function BuscarProducto(){
  2.  
  3.  
  4.  
  5.  
  6.  
  7. nom= $("#nom").val() ;
  8.  
  9.  
  10.  
  11. str = "nom="+nom;
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19. $.ajax({
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27. type: 'POST',
  28.  
  29.  
  30.  
  31. url: 'ListadoProductos2.php',
  32.  
  33.  
  34.  
  35. data: str,
  36.  
  37.  
  38.  
  39. success:function(msg){
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49. $("#result").html(msg)
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59. }
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67. });
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77.  
  78.  
  79. }




pagina ListadoProductos2.php:


Código
  1. <?
  2. include ('lib/claseBaseDatos.php');
  3. $conexion = new ConexionBaseDatos;
  4. $link = $conexion->Conectarse($conexion);
  5.  
  6.  
  7. ?>
  8.  
  9. <style type="text/css">
  10. .fila_0 { background-color: #3C80EE; color:#fff}
  11. .fila_1 { background-color: #FFF;}
  12.  
  13.  
  14.  
  15.  
  16. </style>
  17.  
  18. <form>
  19. <table border='0' width='348px'>
  20. <tr height="50px">
  21. <td colspan='2' align='center' style="font-size:14px; font-weight:bold">Busqueda Productos</td>
  22. </tr>
  23.  
  24. <tr>
  25. <td width='50%' align="right">Nombre:</td>
  26. <td>
  27.                   <input type="text" name="nom" id="nom" onkeyup="BuscarProducto()" />
  28.                </td>
  29. </tr>
  30.  
  31.            <tr height="50px">
  32. <td colspan='2' align='center' style="font-size:12px; font-weight:bold">Rango de Precios de Ventas</td>
  33. </tr>
  34.  
  35.            <tr>
  36.  
  37. <td colspan="2" align="center">
  38.                  Precio Menor: <input type="text" name="p1" id="p1" style="width:70px"  /> Precio Mayor:<input type="text" name="p2" id="p2" style="width:70px"  />
  39.                </td>
  40. </tr>
  41.  
  42.  
  43.  
  44.  
  45.            <tr>
  46.  
  47. <td colspan="2" align="center">
  48.                   <input type="button" value="Buscar por precio" onclick="BuscarProducto2()" />
  49.                </td>
  50. </tr>
  51.  
  52.  
  53.  
  54. </table>
  55.        <br />
  56.        <div id="result" style="border:0px solid #F00; width:1000px">
  57.  
  58.        <table border='0' width="100%">
  59. <tr>
  60. <td colspan='9' align='center' style="font-size:14px; font-weight:bold">Listado de productos</td>
  61. </tr>
  62.  
  63. <tr>
  64.  
  65. <td style="font-weight:bold">Producto</td>
  66. <td style="font-weight:bold">Precio Costo</td>
  67. <td style="font-weight:bold">Precio Venta</td>
  68. <td style="font-weight:bold">Cantidad</td>
  69. <td style="font-weight:bold">Garant&iacute;a</td>
  70. <td style="font-weight:bold">Fecha Ingreso</td>
  71. <td style="font-weight:bold">Descripci&oacute;n</td>
  72.                <td style="font-weight:bold"></td>
  73. </tr>
  74. <?
  75. $query = mysql_query("select producto, precio_costo, precio_venta, cantidad, garantia, fecha_ingreso, descripcion, id from productos order by producto");
  76. $i=0;
  77. while($row = mysql_fetch_assoc($query)){
  78. echo "<tr class='fila_".($i%2)."'>";
  79.  
  80. echo "<td> $row[producto] </td> ";
  81. echo "<td> $row[precio_costo] </td> ";
  82. echo "<td> $row[precio_venta] </td> ";
  83. echo "<td> $row[cantidad] </td> ";
  84. echo "<td> $row[garantia] </td> ";
  85. echo "<td> $row[fecha_ingreso] </td> ";
  86. echo "<td> $row[descripcion] </td> ";
  87. echo "<td><img src='img/edit.png' style='cursor:pointer' title='Editar' onclick='EditarProducto(".$row['id'].")'></td>";
  88. echo '</tr>';
  89. $i++;
  90. }
  91.  
  92.  
  93. ?>
  94. </table>
  95.  
  96.  
  97.        </div>
  98.  
  99. </form>



En línea

el-brujo
ehn
***
Desconectado Desconectado

Mensajes: 21.586


La libertad no se suplica, se conquista


Ver Perfil WWW
Re: busqueda cuelga conexión pagina
« Respuesta #1 en: 21 Enero 2014, 18:57 pm »

tienes que mostrar los errores del php por panatalla para poder ver el error exacto, si no es imposible adivinar lo que está fallando.

Seguramente sea un timeout del script php que si tarda más de x segundos (30 por defecto) pierde la conexión.

Añade a tu script php:

Código:
error_reporting(E_ALL);
ini_set('display_errors', 1);


En línea

kakashi20


Desconectado Desconectado

Mensajes: 435


Ver Perfil
Re: busqueda cuelga conexión pagina
« Respuesta #2 en: 21 Enero 2014, 21:21 pm »

no muestra ningun error colocando esa linea de codigo

ya que cuando estoy escribiendo el nombre del producto que deseo buscar en el text este deja de hacer el retorno por ajax de la info, y entonces es ahi cuando me doy cuenta que se bloquea ya que actualizo el navegador y me dice que se ha producido un error al carga la url.... eston en el navegador de google chrome.
En línea

kakashi20


Desconectado Desconectado

Mensajes: 435


Ver Perfil
Re: busqueda cuelga conexión pagina
« Respuesta #3 en: 21 Enero 2014, 23:30 pm »

alguna sugerencia ?

alguien que me pueda ayudar por favor ?
En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.723


<3


Ver Perfil WWW
Re: busqueda cuelga conexión pagina
« Respuesta #4 en: 21 Enero 2014, 23:53 pm »

Pues si no muestra ningun error, parece que todo estaba bien...  :silbar:
Sólo por curiosidad, -quizás sea error mio de vista-, para que envias el parametro nom si no lo usarás? Tambien creo que es la cantidad de HTML que recibes.

1. Ejecuta la query principal en el MySQL y verifica que no este fallando y que si sea los datos que necesitas, porque creo que debería ser así:
Código
  1. $sql  = "SELECT producto, precio_costo, precio_venta, cantidad, garantia, fecha_ingreso, descripcion, id ";
  2. $sql .= "  FROM productos ";
  3. $sql .= " WHERE nombre = '".$_POST['nom']."' ";
  4. $sql .= "ORDER BY producto";
  5.  
  6. $query = mysql_query($sql);

2. Validar los datos a mostrar, es decir, hacer un ALERT(); a la variable que retorna.
Código
  1. // # Pon un comentario en la linea
  2. // $("#result").html(msg)
  3. // # y pon un alert así:
  4. alert(msg);
Dudo que lo muestre completo ya que sería mucho texto para un alert

3. Se supone que realiza la busqueda y despues al actualizar el navegador, es donde se "cae la conexión", entonces, mira el código fuente y checas si se ha insertado algún contenido.
« Última modificación: 22 Enero 2014, 00:02 am por @shellroot » En línea

Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
kakashi20


Desconectado Desconectado

Mensajes: 435


Ver Perfil
Re: busqueda cuelga conexión pagina
« Respuesta #5 en: 22 Enero 2014, 04:54 am »

La idea de la búsqueda es que al ir escribiendo cada letra de la palabra que quiero buscar esta vaya buscando en la bd, por eso el sql  es con un like . Se pierde la conexión porque a medida que escribo la palabra está ya deja de retornar resultado y recargó el navegador para verificar que la conexión con el sitio esté bien, pero efectivamente esta se cae.
En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.723


<3


Ver Perfil WWW
Re: busqueda cuelga conexión pagina
« Respuesta #6 en: 22 Enero 2014, 05:14 am »

Estamos tratando de buscar el error, antes de ver la programación como tal.
1. Donde está es like?
2. Cuando escribes la primer letra, te muestra resultados? Pues dijistes que cuando después ya deja de retornar.
En línea

Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
kakashi20


Desconectado Desconectado

Mensajes: 435


Ver Perfil
Re: busqueda cuelga conexión pagina
« Respuesta #7 en: 22 Enero 2014, 14:52 pm »

si si, me equivoque al escribir el codigo.

la consulta es

Código
  1. $query = mysql_query("select producto, precio_costo, precio_venta, cantidad, garantia, fecha_ingreso, descripcion, id from productos WHERE producto like '%".$nom."%'");

cuando escribo la primera letra el hace el retorno.

pero llega a cierto momento en estoy escribiendo las letras o palabras y deja de hacer el retorno.

y para confirmar que se haya caido la conexion actualizo el navegador y efectivamente dice que no se puede conectar al sitio
En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.723


<3


Ver Perfil WWW
Re: busqueda cuelga conexión pagina
« Respuesta #8 en: 22 Enero 2014, 20:21 pm »

Supongo que entre más letras ingreses menos registros debería de mostrar! Entonces deberías de NO realización la petición por ajax, y hacerlo directamente en el archivo de ListadoProductos2.php, ingresas los mismos valores y verifica donde está fallando.

Lo otro que veo qué, por cada letra que escribres abres una conexión, no entiendo eso para qué.
En línea

Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
kakashi20


Desconectado Desconectado

Mensajes: 435


Ver Perfil
Re: busqueda cuelga conexión pagina
« Respuesta #9 en: 22 Enero 2014, 22:10 pm »

tal vez el abrir una conexión por cada letra que escribo sature el sistema, pero como podría hacer para no hacer esto ? aunque yo creo que es necesario abrirla para buscar en la bd..




En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines