Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/04/2006, 17:13
caliche
 
Fecha de Ingreso: septiembre-2001
Mensajes: 186
Antigüedad: 23 años, 5 meses
Puntos: 0
problemas por dos scripts que pelean por un archivo de datos!!!!

hola

en un sitio web que desarolle usando CGI tengo el siguiente codigo para sacar la informacion de un archivo a un arreglo en el programa en


$abrir="info.txt";
open(abrir);
@informa=<abrir>;
close(abrir);


y en OTRO SCRIPT del mismo sitio tengo

$abrir="info.txt";
open(abrir);
@informa=<abrir>;
close(abrir);
unlink("info.txt");
$FILE="info.txt";
open(archivconf,">".$FILE);
foreach(@informa)
{
$linea="cualquier cosa";
$linea.="\n";
print archivconf ($linea);
}
close(archivconf);


y tengo el siguiente problema : el sitio comenzo a ser muy visitado y mis visitantes estan ejecutando ambos scripts, o sea que el mismo archivo aveces es abierto para lectura en el script1 y aveces es abierto para escritura en el script2 como el sitio es muy visitado, aaveces sucede que se daña el archivo y creo que es cuestion de concurrencia sobre el mismo archivo de datos "info.txt" .

Como puedo hacer que el archivo sea abierto de manera exclusiva por un script o por lo menos no tener problemas de sincronia y no dañar mis datos cuando los visitantes, (muchos) puedan estar ejecutando diferentes aperturas del mismo archivo ?

Gracias por colaborarme, soy asiduo programador de CGI y tengo esta duda gracias por la ayuda.
__________________
Los mejores programadores de colombia estan aqui!!!!!
http://progcol.tripod.com