Показать сообщение отдельно

  #9686  
Старый 26.03.2009, 11:05
KIR@PRO
Постоянный
Регистрация: 26.12.2007
Сообщений: 353
Провел на форуме:
905389

Репутация: 332
По умолчанию

Цитата:
Сообщение от foxxx1234  
Подскажите как решить такую проблему:

Есть скрипт который добавляет людей подавших заявку в друзья на сайте вконтакте.
При запуске скрипт проверяет не удалена ли анкета и если удалена то удаляет ее из файла с аками. Скрипт запускаю с cron и иногда в файл с аками записывается несколько одинаковых логинов.

Может ли это происходить например из-за того что например один скрипт запущеный с cron еще не доработал и запустился снова. Если да то как это проблему решить.
тебе надо на время работы скрипта блокировать файл.....
вот кусочек кода:

PHP код:
$filefopen ("file.txt""r"); //это понятно открываем файл
flock($file,2); //flock используется для блокировки/разблокировки файлов
//заблокировали файл полностью

while (! feof($file//теперь работаем с файлом записываем читаем... как пример считывание файла полностью..
{
$text fgets ($file1024);
echo (
$text);
}
flock($file,3);//разблокировали файл

//да и не забудь if else использовать для проверки открыт ли файл.. 
За блокировку отвечает функция flock(указатель на файл , вид блокировки). Вид блокировки обозначается цифрой (1 - частичная, 2 - полная). Чтобы разблокировать файл пользуйесь функцией flock, но вид блокировки поставьте "3". © WebCorp
 
Ответить с цитированием