Ejemplo de implementación. Búsqueda en vivo en Bitrix. Ejemplo de implementación Requerir elemento de búsqueda masculino php i
En la lección de hoy, veremos php mysql búsqueda. Hay muchos scripts de búsqueda, algunos usan una base de datos, otros prescinden de ella, hay búsquedas avanzadas con clasificación exacta. Nos centraremos en la búsqueda simple habitual, que busca información en dos tablas de la base de datos. mysql.
Primer paso. Base de datos mysql.
Creando una base de datos buscar_lite, tiene dos mesas noticias- noticias y vacaciones- vacantes.
Establecer privilegios:
Acceso - " raíz",
Clave - "",
Anfitrión - " servidor local".
Volcado de la mesa de noticias.
Estructura de tabla para la tabla `noticias` -- CREAR TABLA SI NO EXISTE `noticias` (`id` int(2) NOT NULL, `title` varchar(255) NOT NULL, `text` text NOT NULL, PRIMARY KEY (`id` `)) MOTOR=MyISAM JUEGO DE CARACTERES POR DEFECTO=cp1251;
Volcado mesa vac - vacantes.
Estructura de tabla para la tabla `vac` -- CREAR TABLA SI NO EXISTE `vac` (`id` int(2) NOT NULL AUTO_INCREMENT, `title` varchar(255) NOT NULL, `text` text NOT NULL, PRIMARY KEY (` id`)) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=3 ;
Segundo paso. HTML y PHP.
Nos conectamos a la base de datos. Establecer una condición en una variable $buscar, en el que no se ingresa la consulta de búsqueda, o tiene menos de 4 caracteres, y también verifica si hay barras y recorta la variable. Creamos dos consultas que buscan en la base de datos dos tablas. noticias y vacaciones por condición de búsqueda de campo texto. (Ya puedes elegir en cuántas tablas necesitas buscar. Por ejemplo, tendrás tablas lecciones, materiales, artículos etc. También puede cambiar las condiciones de búsqueda, en lugar del campo texto, puede seleccionar el campo título u otro campo.) Luego indicamos cuántos caracteres hay en el texto al mostrar la búsqueda en la variable $símbolos. Si en las tablas noticias y vacaciones No se encontró nada en la búsqueda, mostramos un mensaje. Si se encuentran, datos de salida de dos tablas noticias y vacaciones para la consulta de búsqueda dada.
$db = mysql_connect ("localhost", "root", ""); mysql_select_db ("search_lite", $db); if (!$db) echo mysql_error(); if(isset($search)) { if(empty($search) OR strlen($search) < 4) { echo "
"; eco "
";) más (eco"
"; $buscar = htmlspecialchars(stripslashes(trim($buscar))); $sql_news = mysql_query("SELECCIONE id, título, texto DE noticias DONDE texto COMO "%$buscar%""); $noticias = mysql_num_rows($sql_noticias ); $sql_vac = mysql_query("SELECCIONE id, título, texto DESDE vac DONDE texto COMO "%$buscar%""); $sql_vac = mysql_num_rows($sql_vac); $buscar = $buscar; $symbolls = "80"; if ($noticias==0 y $vac==0) echo "
"; else ( /*Noticias/noticias - tabla*/ for($i=1; $noticias = mysql_fetch_array($sql_noticias); $i++) ($buscar_texto = $noticias["texto"]; $buscar_texto = strip_tags($ buscar texto, "
"); $search_txt_length = strlen($search_text); $search_first_enter = strpos(strtolower($search_text), strtolower($find)); $pad_left = $search_first_enter - $symbolls; $pad_right = $search_first_enter + $symbolls + 5; si ($pad_right><0) $pad_left = "0"; $search_text = substr($search_text, $pad_left, $pad_right); $search_text = str_replace (strtolower($find), "".strtolower($buscar)".
$i. $noticias
|
...$buscar_texto...
encontrado en las noticias |
"; ) /*Trabajos/vac - tabla*/ for($i=1; $vac = mysql_fetch_array($sql_vac); $i++) ($buscar_texto = $vac["texto"]; $buscar_texto = strip_tags($buscar_texto , "
"); $search_txt_length = strlen($search_text); $search_first_enter = strpos(strtolower($search_text), strtolower($find)); $pad_left = $search_first_enter - $symbolls; $pad_right = $search_first_enter + $symbolls + 5; if ($pad_right>$search_txt_length) $pad_right = $search_txt_length; if ($pad_left<0) $pad_left = "0"; $search_text = substr($search_text, $pad_left, $pad_right); $search_text = str_replace (strtolower($find), "".strtolower($buscar)".", strtolower($buscar_texto)); echo"
$i. $vac
|
...$buscar_texto...
encontrado en vacantes |
"; } } } } ?>
Tercer paso. CSS.
Escribamos algunos estilos que darán forma a nuestra búsqueda.
Search_name ( color: negro; tamaño de fuente: 18px; ) .search_questions ( color: negro; fuente-peso: negrita; tamaño de fuente: 15px; ) .search_query ( color: azul; estilo de fuente: Cursiva; ) .search_error ( color: rojo; tamaño de fuente: 15 px; ) .search_input ( borde: 1 px negro sólido; ancho: 500 px; alto: 30 px; ) .search_word ( color: azul; ) .search_title ( tamaño de fuente: 20 px; color: azul; font-weight: bold; ) .search_text ( font-size: 15px; color: black; ) .search_cat ( font-size: 12px; color: gray; float: right; margin-top: 20px; )
Hemos considerado con usted un simple php mysql búsqueda que busca información de una base de datos. Por condición, se utilizan dos tablas, puede personalizarlas de la manera que le resulte más conveniente. La próxima lección estará dedicada a la analogía de una búsqueda simple, solo que con funciones avanzadas.
11.1KUna de las funciones más populares y necesarias en cualquier sitio es la búsqueda, implementada mediante un formulario especial. Esta funcionalidad permite a los visitantes encontrar rápidamente el contenido que les interesa en el sitio.
Hoy queremos decirle cómo buscar en el sitio usando un formulario especial que consultará las tablas de la base de datos y mostrará información sobre los administradores actuales en el sitio. Aprenderá a crear una tabla de base de datos que contendrá información sobre el personal actual.
Desarrolle formularios de búsqueda con PHP y familiarícese con SQL ( lenguaje de consulta estructurado) es un lenguaje especial para recopilar, registrar y modificar información contenida en bases de datos. Antes de comenzar, le recomendamos que descargar archivos de proyecto.
que vas a necesitar
- Herramienta de base de datos MySQL.
- Servidor local o remoto con soporte PHP.
- Editor de texto.
Creando una base de datos
Si no está completamente seguro de que puede manejar la base de datos en su alojamiento, comuníquese con el host para obtener instrucciones o asistencia. Después de crear la base de datos, deberá conectarla, crear una tabla y escribir los datos necesarios en ella.
La herramienta de administración de MySQL más popular es PHP My Admin. Esta herramienta será suficiente para nuestra guía de hoy.
crear una tabla
Nuestra tabla debe ser creada en el siguiente formato:
nombre de la columna | tipo de datos | Longitud | Nulo o no nulo | ¿Clave primaria? | Autoincremento |
IDENTIFICACIÓN | EN T | 1 | No nulo | Sí | Sí |
Primer nombre | Várchar | 50 | No nulo | no | no |
apellido | Várchar | 50 | No nulo | no | no |
Correo electrónico | Várchar | 50 | No nulo | no | no |
Número de teléfono | Várchar | 15 | No nulo | no | no |
Una tabla de base de datos se compone de columnas y filas, al igual que en Excel. La primera columna le permite identificar los datos por su nombre. A continuación viene la columna Tipos de datos (data type), que nos indica el tipo de datos que contiene la columna. En el campo Longitud (Length) indica la cantidad máxima de memoria (almacenamiento) para una columna de la tabla. Usamos variables que dan más flexibilidad. En otras palabras, si la longitud del nombre completo es inferior a 50 caracteres, solo se ocupará una parte del espacio asignado.
Y entre los datos de personal no puede haber valores vacíos ( nulo, vacío). La primera fila está resaltada en amarillo porque la columna ID es nuestra clave principal. La clave primaria en la base de datos garantiza que cada entrada sea única. Esta columna también se incrementa automáticamente, lo que significa que a cada registro en nuestra base de datos se le asignará un número único automáticamente.
Ingresamos a los representantes del personal en la tabla.
Una vez que comprenda la tabla, comience a llenarla con datos. 6 entradas son suficientes para fijar el procedimiento en la mente. Aquí está mi propio ejemplo:
Id. de columna | Primer nombre | apellido | Correo electrónico | Número de teléfono |
2 | Ryan | Mayordomo | [correo electrónico protegido] | 417-854-8547 |
3 | Brent | Callahan | [correo electrónico protegido] | 417-854-6587 |
Desarrollo de formularios
Para crear un formulario de búsqueda de sitio a través de Google, abra cualquier editor de texto adecuado. Recomiendo usar el PSPad gratuito. Puede usar cualquier editor de texto que tenga resaltado de sintaxis. Esto facilitará enormemente el proceso de escritura y depuración de código PHP. Al crear una página para un formulario de búsqueda, asegúrese de guardarla en formato .php; de lo contrario, el código PHP no se analizará correctamente. Una vez que guarde el documento, copie el siguiente marcado en él:
Búsqueda detallada de contactos
Puedes buscar por nombre o apellido
Si está familiarizado con el lenguaje HTML, entonces todo debería estar claro para usted al menos hasta la etiqueta del formulario de apertura. Dentro de esta etiqueta se encuentra el elemento más importante de todo el código: el atributo de acción. Como acción de nuestro formulario, especificamos el nombre de nuestro archivo y luego aplicamos la cadena de consulta “ Vamos”.
Comprobación de criterios
Cuando el usuario ingresa un nombre o apellido y luego hace clic en el botón Enviar, el formulario envía los datos a sí mismo y agrega la cadena de consulta " Vamos". En este punto, estamos comprobando la presencia de la cadena de consulta go. Si el resultado es positivo, mostramos los resultados de la búsqueda.
Antes de mostrar los resultados solicitados, debemos verificar dos veces: (1) se envió el formulario, (2) la cadena de consulta contenía el valor ir, (3) ¿el término de búsqueda se ingresó en minúsculas o mayúsculas? Si ninguna de las comprobaciones da un resultado positivo ( verdadero), no estamos obligados a tomar ninguna medida.
Primero, agreguemos un pequeño bloque de código PHP para la búsqueda del sitio después de la etiqueta de cierre.: