UNIDAD 5: LINUX PHP REGISTROS Y ARCHIVOS SECUENCIALES

TEMA 7: PHP BUSQUEDA ARCHIVO DISCO

En este tema se analiza la busqueda de un registro o renglon determinado.

En este proceso el usuario del programa quiere que se despliegue un y solo un registro de informacion proporcionando un dato de busqueda generalmente la clave del registro.

Prog21.php

<HTML>
<FORM ACTION=prog21.php METHOD=post>
DAME CLAVE A BUSCAR:<INPUT TYPE=text NAME=CLAVE><BR>
<INPUT TYPE=submit NAME=OK VALUE="busqueda"><BR>
</FORM></HTML>
<?php
if ($OK == "busqueda") {
// abriendo archivo
$archivo=fopen('alumnos.dat','a+');
// empezando una tabla html para desplegar
echo "<HTML><TABLE Border=10 CellPadding=5><TR>";
echo"<th bgcolor=Green>CLAVE</th><th bgcolor=White>NOMBRE</th><th bgcolor=Red>EDAD</th><th bgcolor=YellowRed>ESTATURA</th></TR>";
// leyendo el archivo
while (!feof($archivo)){
$clave=fgets($archivo);
$nombre=fgets($archivo);
$edad=fgets($archivo);
$estatura=fgets($archivo);
// convirtiendo al mismo tipo
settype($clave,"integer");
// settype($CLAVE,"integer");
if ( $CLAVE == $clave){
// desplegando en celda de tabla html
echo"<tr>";
echo "<td>".$clave."</td>";
echo "<td>".$nombre."</td>";
echo "<td>".$edad."</td>";
echo "<td>".$estatura."</td>";
echo"</tr>";};
};
// cerrando archivo y la tabla html
echo "</table>";
fclose($archivo);
};
?>

corrida:

image107.jpg

Recordar que la caracteristica principal de un archivo secuencial, es que no es posible acceder o accesar a un registro o renglon especifico o determinado sino que se debera recorrer todos los n-1 renglones anteriores.

Esta situacion se da porque al construir un registro cualquiera con una monton de campos strings a la hora de almacenar dichos registros, estos registros tendran tamanos diferentes, esta es la razon principal por la cual al buscar un registro especifico se tiene que recorrer y validar todos los registros anteriores.

En el programa ejemplo se esta usando un ciclo while(!eof(ARCHIVO)) para recorrer todos los registros del archivo (eof=end of file), por supuesto que si se tiene un archivo con 5000 registro y el buscado es el 4500 al menos se se tendra que recorrer todos los 4499 registros anteriores.

TAREAS PROGRAMACION LINUX PHP

Construirles programas de busquedas a los archivos en disco ya construidos.

Politica de Privacidad