Professional Documents
Culture Documents
<!doctype html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
</body>
</html>
<div id="resultadoBusqueda"></div>
2 de 5: jQuery
A continuacin hay que agregar la librera de jQuery en el head del
HTML para poder usar la funcin POST. Yo utilizar la versin 1.9.1
minificada que tengo descargada.
<script src="js/jquery-1.9.1.min.js"></script>
Ahora debemos crear una funcin, donde habr una variable que sea el valor
del input en el formulario. Yo llamar a la funcin buscar.
<script>
function buscar() {
};
</script>
<script>
function buscar() {
if (textoBusqueda != "") {
$.post("buscar.php", {valorBusqueda:
textoBusqueda}, function(mensaje) {
$("#resultadoBusqueda").html(mensaje);
});
} else {
("#resultadoBusqueda").html('');
};
};
</script>
$("#resultadoBusqueda").html('');
$("#resultadoBusqueda").html('<p>JQUERY VACIO</p>');
Para que cuando cargue la pgina por primera vez (en cada visita)
muestre un mensaje en el contenedor, debemos declarar que, cuando el
documento haya cargado (y est listo), mostrar un mensaje usando el
mtodo HTML de jQuery.
$(document).ready(function() {
$("#resultadoBusqueda").html('<p>JQUERY VACIO</p>');
});
<script>
$(document).ready(function() {
$("#resultadoBusqueda").html('<p>JQUERY VACIO</p>');
});
function buscar() {
if (textoBusqueda != "") {
$.post("buscar.php", {valorBusqueda:
textoBusqueda}, function(mensaje) {
$("#resultadoBusqueda").html(mensaje);
});
} else {
$("#resultadoBusqueda").html('<p>JQUERY
VACIO</p>');
};
};
</script>
3 de 5: MySQL
En este ejemplo tengo una base de datos llamada mmv con
cotejamiento utf8_spanish_ci. Dentro tengo una tabla llamada mmv001 que
tiene cuatro columnas con el mismo cotejamiento. El motor de
almacenamiento es InnoDB.
4 de 5: PHP
Ahora viene la parte interesante. Lo primero que debemos hacer es crear un
archivo llamado buscar.php (o cualquiera que sea el nombre que hayamos
puesto en la URL del $.post de jQuery).
<?php
require('conexion.php');
?>
<?php
require('conexion.php');
//Variable de bsqueda
$consultaBusqueda = $_POST['valorBusqueda'];
?>
//Filtro anti-XSS
$consultaBusqueda = str_replace($caracteres_malos,
$caracteres_buenos, $consultaBusqueda);
<?php
require('conexion.php');
//Variable de bsqueda
$consultaBusqueda = $_POST['valorBusqueda'];
//Filtro anti-XSS
$consultaBusqueda = str_replace($caracteres_malos,
$caracteres_buenos, $consultaBusqueda);
//Variable vaca (para evitar los E_NOTICE)
$mensaje = "";
?>
<?php
require('conexion.php');
//Variable de bsqueda
$consultaBusqueda = $_POST['valorBusqueda'];
//Filtro anti-XSS
$consultaBusqueda = str_replace($caracteres_malos,
$caracteres_buenos, $consultaBusqueda);
//Variable vaca (para evitar los E_NOTICE)
$mensaje = "";
if (isset($consultaBusqueda)) {
");
};
?>
Ahora vamos a obtener la cantidad de filas que devuelve la consulta para
despus hacer una condicional donde, si es igual a cero es porque no hay
registros con esos datos (lo escrito en el input), y sino, muestra los datos en
un bucle while. Por ltimo, hacemos un echo de $mensaje y listo.
<?php
require('conexion.php');
//Variable de bsqueda
$consultaBusqueda = $_POST['valorBusqueda'];
//Filtro anti-XSS
$consultaBusqueda = str_replace($caracteres_malos,
$caracteres_buenos, $consultaBusqueda);
$mensaje = "";
//Comprueba si $consultaBusqueda est seteado
if (isset($consultaBusqueda)) {
");
$filas = mysqli_num_rows($consulta);
} else {
while($resultados =
mysqli_fetch_array($consulta)) {
$nombre = $resultados['nombre'];
$apellido = $resultados['apellido'];
$edad = $resultados['edad'];
//Output
$mensaje .= '
<p>
</p>';
echo $mensaje;
?>
5 de 5: Ejemplos
Una vez hecho todo lo anterior, podemos observar los resultados finales. Yo
no lo he aplicado ningn estilo, pero se puede hacer sin problemas.
El ID res ultadoBus queda es t definido en jQuery como J QUERY VACIO
Res ultado para pe, donde en la bas e de datos hay Prez y Pedro, vemos que es case-ins ens itive
Resultado de la consulta CONCAT(nombre, ,apellido ) COL LAT E UT F8_S PANISH_CI LI KE % $cons ultaBus queda%
Output
Conclusin:
Es ms fcil de lo que parece, es todo cuestin de comprender como funciona
cada parte, desde el HTML hasta la base de datos. Si te sirvi, por favor,
comprtelo.