Atletico el Vigia FC Unión Atletico Maracaybo trujillanos Futbol Club Monagas Sport Club Estrella Roja FC Llanero de Guanare FC Estudiantes de Mérida Guaros de Lara Futbol Club Mineros de Guyana Deportivo Táchira Deportivo Italia Caracas Futbol Club Carabobo Futbol Club Zamora Futbol Club Aragua Futbol Club Acminerven Deportivo Anzoátegui Porguguesa Futbol Club
 
Viernes, 11.21.2008, 10:51am (GMT)
  Inicio
  FAQ
  RSS
  Links
  Mapa
  Contacto
 
Barack Obama nuevo presidente de Estados Unidos ; Venezuela Lanzó Satelite al Espacio Aereo ; Béisbol Profesional arranca hoy ; Apple podría renovar su línea de ordenadores portátiles
::| Letra:       [Búsqueda Avanzada]
 
Todas las Noticias  
  Venezuela
  Mundo
  Sociedad
  Economía
  Deportes
  Tecnología
  Cultura
  Webmaster
  Salud
  ::| Boletín
Tu Nombre:
Tu Email:
 
 
 
Webmaster
 
Aprende a Crear un Buscador con PHP
Viernes, 08.29.2008, 06:54am (GMT)

php
php
En este artículo veremos como crear un buscador con PHP y MySQL que servirá para cualquier tabla MySQL de nuestra base de datos y que podrá ser mostrado facilmente en nuestro sitio web.

El script consta de tres partes. La configuración, el formulario y el proceso del formulario. La primera parte, la más sencilla de todas, es donde tendrás que poner los datos de tu base de datos y la tabla donde quieres que el buscador realice las búsquedas. No tiene pérdida. Al final de la configuración realizamos la conexión a la base de datos ya que la usaremos cada vez que se acceda al buscador.

En la segunda parte se trata la creación del formulario. Como no conocemos los campos de la tabla tenemos que generar ese camop del formulario dinámicamente. Para ello utilizamos la sentencia "SHOW FIELDS FROM table" que nos devuelve información de todos los campos que hay en la tabla. De esta forma conseguimos que nos liste todos los campos de la tabla que hayamos escogido al configurar, en el formulario.

En la tercera parte, que solo se ejecuta si se ha enviado el formulario, se realiza la búsqueda con los datos obtenidos. Para ello utilizamos una sentencia de SQL de este tipo: "SELECT * from tabla WHERE campo LIKE '%valor%'" la cual nos devuelve todas las filas donde haya encontrado algo que contenga el valor en el campo seleccionado. Finalmente mostramos los resultados obtenidos utilizando un bucle para recorrer todos los campos de la tabla.

Configurar y subir, así de facil :)

Archivo: buscador_generico.php

<?
// Buscador para tablas MySQL escrito en PHP. Por Alex para www.webtaller.com
// Creado el 13-10-2003


////////////////////////////
// Configuración
///////////////////////////

//modifica estas variables según tu servidor de MySQL

$bd_servidor = "localhost";

$bd_usuario = "pepito";

$bd_contrasenya = "grillo";

$bd_bdname = "mybd";

$bd_tabla = "unatabla"; // Tabla donde se harán las búsquedas

// Conexión y selección de la base de datos

$link = mysql_connect($bd_servidor,$bd_usuario,$bd_contrasenya);

mysql_select_db($bd_bdname,$link);

////////////////////////////
// Formulario
///////////////////////////

?>

<center>
<p><h2>Introduce las palabras para la búsqueda</h2></p>
<p><form name="buscador" method="post" action="buscador_generico.php"><br>
Buscar en:
<select name="campo">
<?php

//Con este query obtendremos los campos por los cuales el usuario puede buscar

$result = mysql_query("SHOW FIELDS FROM `$bd_tabla`",$link);

while($row = mysql_fetch_row($result)) {

// en $row[0] tenemos el nombre del campo
// de esta manera no necesitamos conocer el nombre de los campos
// por lo que cualquier tabla nos valdrá

?>
<option value="<?php echo $row[0]; ?>"><?php echo $row[0]; ?></option>
<?php

}

?>
</select>
Palabra(s): <input type="text" name="palabra"><br>
<input type="submit" value="Enviar" name="enviar">
</form></p>
</center>

<?

////////////////////////////
// Proceso del Formulario
///////////////////////////

if(isset($_POST['enviar'])) {

// Solo se ejecuta si se ha enviado el formulario

$query = "SELECT * from $bd_tabla WHERE `{$_POST['campo']}` LIKE '%{$_POST['palabra']}%'";

$result = mysql_query($query,$link);



$found = false; // Si el query ha devuelto algo pondrá a true esta variable

while ($row = mysql_fetch_array($result)) {

$found = true;

echo "<p>";

foreach($row as $nombre_campo => $valor_campo) {

// Tenemos que mostrar todos los campos de las filas donde se haya
// encontrado la búsqueda.


if(is_int($nombre_campo)) {

continue; //Cuando hacemos mysql_fetch_array, php genera un array
// con todos los valores guardados dos veces, uno con
// índice numérico y otro con índice el nombre del campo.
// Solo nos interesa el del nombre del campo.

}

echo "<b>".$nombre_campo."</b> : ".$valor_campo."<br>";
}

echo "</p>";

}

if(!$found) {

echo "No se encontró la palabra introducida";

}

}
?>

Alex - Webtaller

Comentarios (0)        Imprimir        Avisar a un Amigo        Arriba


Artículos Relacionados:
» 15 consejos para diseño Web.
» Planificación de un sitio web
» El Proceso de Desarrollo de un Sitio Web
» 10 razones para contratar a un desarrollador web profesional


Otros Artículos:
Que puede esperar de un Trabajo (08.29.2008)
El Proceso de Desarrollo de un Sitio Web (08.29.2008)
10 razones para contratar a un desarrollador web profesional (08.29.2008)



 
  ::| Eventos
November 2008  
Do Lu Ma Mi Ju Vi
            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            
 

Diseño:
[Subir]