UNIDAD 6: PHP REGISTROS Y ARCHIVOS DIRECTOS

TEMA 7: PHP ARCHIVOS Y OPERACIONES CON CAMPOS

En este tema se analiza la manera de poder realizar operaciones o procesos con los campos de los registros en el archivo secuencial, lo unico importante a considerar es que los campos del registro son en cierta medida igual que variables normales y por tanto se pueden proceesar de manera normal como lo muestra el ejemplo.

Prog32.php


<HTML>

<FORM ACTION=prog32.php METHOD=post>

<INPUT TYPE=submit NAME=OK VALUE="EDAD+100"><BR>

</FORM></HTML>

<?php

if ($OK == "EDAD+100") {

// tamano registro y cantidad de registros

$TR=47;$CR=filesize('datos.dat') / $TR;

// creando y abriendo archivo

$archivo=fopen('datos.dat','r+') or die("no puedo abrir archivo");

// abriendo en lectura el registro

for($x=1; $x<=(int)$CR; $x=$x+1)

{

// leyendo y desempacando el registro

$reg=fread($archivo,$TR);

$reg= unpack("iclave/A30nombre/iedad/destatura/A1bandera", $reg);

// realizando operacion

$reg[edad]=$reg[edad]+100;

// empacando otra vez

$reg =pack("IA30idA1",$reg[clave],$reg[nombre],$reg[edad],$reg[estatura],$reg[bandera]);

// regresando apuntador al principio del renglon

fseek($archivo, -$TR, SEEK_CUR);

// regrabando registro

fwrite($archivo,$reg,strlen($reg));

};

//cerrando archivo

fclose($archivo);

// avisando

echo "PROCESO TERMINADO";

};

?>

corrida:

image120.jpg

corrida prog28

image121.jpg

como se observa la solucion es muy sencilla solo se ocupa:

1.- leer el registro, esto mueve el apuntador al siguiente registro.

2.- modificar registro

3.- regresar a posicion anterior con fseek()

4.- grabar el registro corregido

y no se ocupan los dos archivos como en el caso secuencial.

TAREAS PROGRAMACION PHP :

CONSTRUIRLES PROGRAMAS QUE PROCESEN ALGUNOS CAMPOS DE LOS ARCHIVOS EJEMPLOS QUE YA TIENEN CONSTRUIDOS.��

 




Google
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki
Politica de Privacidad