PHP - BUSCADOR DE REGISTROS

 
Vista:
Imágen de perfil de Sandra

BUSCADOR DE REGISTROS

Publicado por Sandra (50 intervenciones) el 20/04/2015 13:51:21
Buenas! ya vuelvo esta semana a preguntar, eso si, como usuario registrado en toda regla. ^_^

Ahora estoy intentando poner un buscador en la página principal donde me muestra los registros ya paginados y todo bonito, pero no hay forma...me sale el error este:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/s15c4aed/public_html/gestion-acrasesores/modules/Clientes/buscador.php on line 23

Os pongo el código de buscador.php a ver si le veis algun error.... Os pongo en negrita la linea donde indica el error:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?php
//Variable que contendrá el resultado de la búsqueda
$texto = '';
//Variable que contendrá el número de resgistros encontrados
$registros = '';
$resultado='';
if($_GET){
 
  $busqueda =$_GET['criterio'];
  $entero = 0;
 
  if (empty($busqueda)){
	  echo 'Búsqueda sin resultados';
  }else{
	  // Si hay información para buscar, abrimos la conexión
	  $conexion = mysql_connect("localhost", "s15c4aed_admin", "password");
 
	  //Consulta para la base de datos, se utiliza un comparador LIKE para acceder a todo lo que contenga la cadena a buscar
	  $sql = "SELECT * FROM CLIENTE WHERE RAZON_SOCIAL LIKE '%" .$busqueda. "%' ORDER BY RAZON_SOCIAL";
 
	  $resultado = mysql_query($sql); //Ejecución de la consulta
      //Si hay resultados...
	  if (mysql_num_rows($resultado) > 0){
	     // Se recoge el número de resultados
		 $registros = '<p>HEMOS ENCONTRADO ' . mysql_num_rows($resultado) . ' registros </p>';
	     // Se almacenan las cadenas de resultado
		 while($fila = mysql_fetch_assoc($resultado)){
              $texto .= $fila['RAZON_SOCIAL'] . '<br />';
			 }
 
	  }else{
			   $texto = "NO HAY RESULTADOS EN LA BBDD";
	  }
	  // Después de trabajar con la bbdd, cerramos la conexión (por seguridad, no hay que dejar conexiones abiertas)
	  mysql_close($conexion);
  }
}
?>

Llevo toda la santa mañana y ya no se que más hacer.... (siempre me pasa igual jajajaj)

Alguna idea?¿?¿ Graaacias!!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

BUSCADOR DE REGISTROS

Publicado por jose luis (33 intervenciones) el 20/04/2015 17:28:55
Hola por lo que me parece te falta esto la conexión como parámetro de la función mysql_query -que dicho sea de paso esta en desuso y sería mejor que uses mysqli- También te falta el mysql_select_db

mysql_select_db("mi_db"); //debes poner el nombre de tu base de datos entre las comillas
$resultado = mysql_query($sql,$conexion);

avisa si te ha funcionado. Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de sandra

BUSCADOR DE REGISTROS

Publicado por sandra (50 intervenciones) el 20/04/2015 18:11:55
Puees no va....ahora ponga lo q ponga me sale la pagina en blanco....esta pasando el parametro, eso si...

Tengo activado php 5.2 en mi hosting asi que me funciona.

Pero esto se me resiste!! Ufff
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Alberto
Val: 478
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

BUSCADOR DE REGISTROS

Publicado por Alberto (351 intervenciones) el 20/04/2015 18:22:48
Hola...

Haber si entiendo, tienes una caja de texto donde escribes el valor a buscar, al darle click a un botón necesitas que te muestre cuantos (Total) registros encontró con lo que tu ingresaste anteriormente... Ese es el objetivo?...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de sandra

BUSCADOR DE REGISTROS

Publicado por sandra (50 intervenciones) el 20/04/2015 18:29:53
Exacto, q me muestre todos los registros que coincidan.... Ahora me sale en blanco añadiendole el select db q me faltaba.... Aiiiiisssss....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Alberto
Val: 478
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

BUSCADOR DE REGISTROS

Publicado por Alberto (351 intervenciones) el 20/04/2015 18:51:23
Hahahaha.... Siento que te complicaste la vida mi estimada...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<html>
	<head>
		<title>Tablas</title>
	</head>
	<body>
		<form action="#" method="post">
			<input type="text" name="txtBusar" placeholder="Buscador..."/>
			<input type="submit" value="Buscar">
		</form>
		<?php
			$busqueda = ISSET($_POST['txtBusar']) ? $_POST['txtBusar'] : null;
			$conn = mysql_connect("localhost","root","");
			mysql_select_db("practicas",$conn);
			$result = mysql_query("SELECT * FROM usuario WHERE nombre LIKE '%".$busqueda."%' ORDER BY nombre");
			if ($busqueda != ""){
				if (mysql_affected_rows($conn) > 0){
					echo "SE HAN ENCONTRADO ".mysql_num_rows($result)." REGISTROS.</br>";
					while($row = mysql_fetch_array($result)){
						echo "Nombre: ".$row[1]."</br>";
					}
				} else{
					echo "SIN RESULTADOS DISPONIBLES";
				}
				mysql_close($conn);
			}
		?>
	</body>
</html>

Te explico... Tenemos nuestra caja de texto y nuestro botón correspondiente que hace el trabajo, como podrás darte cuenta lo tengo dentro de un <form/> para poder realizar la acción correspondiente, dicha acción mandara el valor indicado mediante POST al mismo formulario (action="#"), posteriormente es cuestión de recuperar el valor como es tradición, realizamos una pequeña validación donde indica que si el valor obtenido es diferente de vació entonces realizamos la consulta a la base de datos concatenando el valor recuperado, hacemos otra validación en donde nos indica si hubo resultados afectados por nuestra consulta; es decir, si regreso algun registro (mysql_affected_rows($conn)), e imprimimos en pantalla los registros encontrados así como el total de ellos, caso contrario mostramos en pantalla que no hubo coincidencias.

Sin mas que comentar, cualquier duda y/o inconveniente, aquí estamos. Suerte!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de sandra

BUSCADOR DE REGISTROS

Publicado por sandra (50 intervenciones) el 21/04/2015 09:26:47
Tiendo a complicarme la vida, jajajaja.. Ademas el buscador está integrado o quiero que se integre dentro de una lista paginada de resultados... probaré tu codigo adaptado a mi lista paginada de resultados ahora a ver que tal va y os comento... aiii que complicado jaja
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de sandra

BUSCADOR DE REGISTROS

Publicado por sandra (50 intervenciones) el 21/04/2015 10:06:23
Perfecto!!! Lo he dirigido a otra página para que no haya lios con la paginación de los resultados y perfecto!! muuuchas gracias siempre consigo ayuda aqui ^_^ es una pasada jejeje.

Yuhu! no tardare en preguntar mas cositas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

BUSCADOR DE REGISTROS

Publicado por Jose luis (33 intervenciones) el 20/04/2015 18:56:54
Tenes configurado error reporting en php? Para que puedas ver si hay algún error. Hace que te muestre la consulta que esta ejecutando. Copia la y correa en el phpmyadmin para que veas si tiene algún error la consulta. Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de sandra

BUSCADOR DE REGISTROS

Publicado por sandra (50 intervenciones) el 20/04/2015 19:03:39
La he ejecutado directamente desde phpmyadmin y funciona perfecta jeje. Es cuestion de php :/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

BUSCADOR DE REGISTROS

Publicado por jose luis (33 intervenciones) el 20/04/2015 20:08:38
fijate en la consola del chrome cuando lo hacés correr y se queda en blanco si no te devuelve un error 500 (internal server error). Deberías poner en tu php.ini el error reporting para que te muestre los errores. En los equipos usados para desarrollo debe estar para que puedas ver errores y advertencias. Si puedes pasar el código sería mucho más facil darte una mano. Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar