Академический Документы
Профессиональный Документы
Культура Документы
Una vez dentro del phpMyAdmin, seleccionamos la base de datos que queremos
exportar a un archivo.
espacio.
Una vez recibido el archivo ya tenemos la copia de la base de datos en nuestro disco,
lista para Importar.
archivo.
Nos muestra la ventana donde nos permite examinar en nuestro disco duro el archivo de
la base de datos. Clicamos en "Examinar", seleccionamos el archivo y aceptamos.
Hecho esto slo nos queda hacer clic en "Continuar" y esperar a que se cargue el
archivo. Tardar ms o menos, dependiendo del tamao del fichero.
Los tipos de los campos a buscar debern ser CHAR, VARCHAR o TEXT con sus
variantes.
Ahora disearemos una pgina con un formulario y una caja de texto para escribir la
cadena de consulta "busqueda" y llamar al script de bsqueda "buscar.php". Ejemplo:
<FORM METHOD=POST ACTION="buscar.php">
Buscar: <INPUT TYPE="text" NAME="busqueda">
</FORM>
En el fichero buscar.php es donde est el click de la cuestin.
Hay que hacer la consulta que busque las palabras y devuelva como resultado los
registros coincidentes. Hasta aqu parece fcil y podramos resolverlo as:
SELECT * FROM ARTICULOS WHERE DESARROLLO LIKE '%$busqueda%' OR
TITULO LIKE '%$busqueda%'
Pues esta consulta nos mostrar todos los artculos que en su titulo o en su contenido
aparezca la frase de bsqueda tal y como nosotros la introducimos. Esto es muy
limitado ya que un cambio en el orden de las palabras o un artculo de separacin dar
al traste con nuestra bsqueda no mostrando los resultados deseados.
Si bien podramos depurar y mejorar la sintaxis de nuestra bsqueda utilizando el
operador LIKE las bsquedas resultaran muy lentas y no tendran el resultado esperado.
La solucin mas eficiente es utilizar los ndices FULLTEXT especficamente indicados
para estos menesteres. Pues bien esto implica ir a nuestra base de datos, y crear un
indice FULLTEXT con todos los campos que deseamos incluir en nuestra busqueda,
que en nuestro caso son TITULO y DESARROLLO. Para ello basta con el
phpmyadmin o bien escribir la instruccin directamente:
ALTER TABLE ARTICULOS ADD FULLTEXT(TITULO, DESARROLLO);
Buscar datos
Criterios de bsqueda
Muchas veces no nos interesa mostrar toda la tabla, sino algn dato especfico de la
misma. Pero para buscar uno o varios datos, debemos saber otros, por ejemplo, en la
tabla "agenda" vista en pginas anteriores, para buscar el telfono o el email de alguien,
debemos saber su nombre.
El criterio de bsqueda es el dato que tenemos para poder buscar los dems. es decir
aqu el criterio de bsqueda ser el nombre, y los datos buscados sern el telfono y el
email.
Busqueda exacta
Le llamamos as a la bsqueda en la que hay que escribir el dato que conocemos (el
nombre en este ejemplo) de forma completa. para ello seleccionamos toda la tabla, y
aplicamos luego la sentencia where, para buscar el registro que coincida con la
condicin que indiquemos.
$sql="select * from agenda where nombre='Vicente Gracia'"
la sentencia where se usa de la misma manera que vimos para modificar datos. es decir
indicamos el nombre del campo, y lo igualamos al valor que debe tener. Es aqu donde
establecemos el criterio de bsqueda,
El resto de cdigo php es el mismo que hemos usado para mostrar la tabla completa. As
el siguiente cdigo nos mostrar adems del nombre indicado, el telfono y el email:
$con=mysql_connect("localhost","root","");
mysql_select_db("miagenda",$con);
$sql="select * from agenda where nombre='Vicente Gracia'";
$datos=mysql_query($sql,$con);
while ($row=mysql_fetch_array($datos)) {
$nombre=$row['nombre'];
$telefono=$row['telefono'];
$email=$row['email'];
echo "$nombre, $telefono, $email. <br/>";
}
mysql_close($con);
?>
Aunque lo normal en este caso es que haya un slo registro coincidente, seguimos
utilizando el bucle while por si hubiera ms de uno, en ese caso se nos mostraran todos
los registros que cumplieran las condiciones indicadas.
El resultado del ejemplo anterior, nos dar el siguiente resultado:
Vicente Gracia, 685138554, vicentegracia@msn.com.
Esto es un simple ejemplo para indicar cmo buscar datos en una base, pero como
puedes ver esto tal como est hecho aqu, no resulta muy eficaz, por lo que lo normal es,
mediante un formulario, recoger en una variable el dato que nos da el usuario (criterio
de bsqueda), y buscar esa variable en la base de datos.
Es as como podemos crear un buscador. El usuario introduce sus datos de bsqueda,
nosotros los buscamos en la base y le devolvemos lo que hemos encontrado. El resto es
cuestin de organizacin y presentacin de la pgina.
O bien,
Modificar registros opcion B
<html>
<body>
<?php
if (isset($id)){
// process form
$link = mysql_connect("localhost", "root");
mysql_select_db("mydb",$db);
$sql = "UPDATE agenda SET nombre='$nombre',
direccion='$direccion',".
"telefono='$telefono', email='$email' WHERE id=$id";
$result = mysql_query($sql);
}else{
echo "Debe especificar un 'id'.\n";
}
</body>
</html>