Ver Mensaje Individual
  #6 (permalink)  
Antiguo 04/07/2010, 21:36
lonely955
 
Fecha de Ingreso: junio-2010
Mensajes: 5
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: formulario de búsqueda en php

amigos, no encuentro la solución, intenté de la forma que me ponen ahí, y buscando otros códigos, encontré ya varios, no me funcionan aún, con este código cuando lo corríjo me aparece la página en blanco y sí tengo registros en la base de datos, y tengo este otro código, pero no me manda ningún resultado...lo pongo espero puedan ayudarme...

Formulario:
<form action="consulta.php" method="post">
Tipo de Búsqueda:<br>
<select name="tipobusqueda">
<option value="a">Búsqueda A
<option value="b">Búsqueda B
<option value="c">Búsqueda C
<option value="d">Búsqueda D
</select>
<br>
¿Qué deseas buscar?:<br>
<input name="busqueda" type=text>
<br>
<input type=submit value="Buscar">
</form>

Código php

<?

Creamos una condicional para comprobar que el campo se ha seleccionado e introducido valores:

trim ($busqueda);
if (!$tipobusqueda || !$busqueda)
{
echo "Campo de búsqueda vacío . Inténtalo de nuevo. ";
exit;
}

Ahora, para que no puedan entrar carácteres que puedan interferir en la interpretación del script como puede ser las comillas, la función addslashes añade las barras inversas para estirilizar el campo, posteriormente deberemos eliminarlas en los resultados de búsqueda con la función stripslashes.

$tipobusqueda = addslashes($tipobusqueda);
$terminobusqueda = addslashes($busqueda);

Conectamos con nuestra base de datos y guardamos los datos de conexión en una variable para posteriormente realizar la condicional de error de conexión. Utilizamos la @ delante para que no nos devuelva los datos de la conexión en la pantalla.

@ $db = mysql_pconnect("host", "usuario", "contraseña");

if (!$db)
{
echo "Error: No se ha podido conectar a la base de datos. Por favor, prueba de nuevo más tarde.";
exit;
}
mysql_select_db("bdconsulta");

Llevamos a cabo la consulta:

$consulta = "select * from tabla where ".$tipobusqueda." like '%".$busqueda."%' ";
$resultado = mysql_query($consulta);

Mostramos los resultados según el número obtenido:

$numerode_resultados = mysql_num_rows($resultado);

echo "<p>Número de resultados encontrados: ".$numerode_resultados."</p>";

for ($i=0; $i <$numerode_resultados; $i++)
{
$filas = mysql_fetch_array($resultado);

Utilizamos la función stripslashes para eliminar las posibles barras inversas y mostramos la búsqueda:

echo "<p>".($i+1).". Búsqueda A: ";
echo stripslashes($filas["a"]);
echo "<br>Búsqueda B: ";
echo stripslashes($filas["b"]);
echo "<br>Búsqueda C ";
echo stripslashes($filas["c"]);
echo "</p>";
}
?>
la página de donde lo obtuve es esta http://www.hucreative.com/php/php3.html ...me urge amigos!!! gracias por su ayuda