По окончании работы программы ей нужно "убрать за собой" некоторые текстовые файлы:
<?php
$mail1=$_GET['mail1'];
$mail2=$_GET['mail2'];
unlink ('mail}'.$mail1.'.txt');
unlink ('mail}'.$mail2.'.txt');
?>
Код возвращает 11, но удаляется при этом только один файл(mail}'.$mail2.'.txt'). Если снова вызвать эту функцию, удалится и второй файл. Заставив с помощью for функцию по удалению файлов выполняться несколько раз, я не добился делаемого результата, однако все удалилось, когда я просто повторил вызов функции в коде программы. Но я не особо верю в надежность такого решения. Скажите, почему так происходит и как с этим бороться.
Спустя 7 минут, 8 секунд (24.08.2010 - 04:53) olgatcpip написал(а):
Дабы исключить глупый ляп, проверь получает ли в гете 2 параметра сразу.
Спустя 8 минут, 35 секунд (24.08.2010 - 05:02) Димитер написал(а):
Получает, код:
<?php
$mail1=$_GET['mail1'];
$mail2=$_GET['mail2'];
unlink ('mail}'.$mail1.'.txt');
unlink ('mail}'.$mail2.'.txt');
echo $mail1;
echo $mail2;
?>
выводит firstsecond.
Спустя 2 минуты, 24 секунды (24.08.2010 - 05:04) olgatcpip написал(а):
ворое. тут относительный путь у тебя... лично меня это смущает. попробуй абсолютный поставить...
ещё меня смущает фигурная скобка.
Возможно не по делу спрашиваю, но дельного в голову не приходит
ещё меня смущает фигурная скобка.
Возможно не по делу спрашиваю, но дельного в голову не приходит
Спустя 3 минуты, 5 секунд (24.08.2010 - 05:07) Димитер написал(а):
Сколько работаю с файлами, всегда ставил отностительные пути, и все работало. По поводу скобки, если бы дело было в ней, она точно бы себя проявила раньше, у меня с этими файлами связан обмен данными между flash-роликами.
Уже и дубль перестал работать, а ведь мне в перспективе еще и чат удалять.
Уже и дубль перестал работать, а ведь мне в перспективе еще и чат удалять.
Спустя 1 минута, 8 секунд (24.08.2010 - 05:08) olgatcpip написал(а):
Ещё можно посмотреть, видит ли php его
$mail1=$_GET['mail1'];
$mail2=$_GET['mail2'];
if( is_file ('mail}'.$mail1.'.txt'))
unlink ('mail}'.$mail1.'.txt');
else
echo '<br />не понимаем что фэто файл 1';
if( is_file ('mail}'.$mail2.'.txt'))
unlink ('mail}'.$mail2.'.txt');
else
echo '<br />не понимаем что фэто файл 2';
echo $mail1;
echo $mail2;
Спустя 50 секунд (24.08.2010 - 05:09) olgatcpip написал(а):
Цитата |
Сколько работаю с файлами, .... |
верю.
Спустя 1 минута, 39 секунд (24.08.2010 - 05:11) olgatcpip написал(а):
так и узнать возврашает ли false, как и положено....
Спустя 1 минута, 9 секунд (24.08.2010 - 05:12) olgatcpip написал(а):
ну и совсем бредовый совет. поставь тайм оут между этими анлинками, пока не поймешь в чем дело
Спустя 4 минуты, 19 секунд (24.08.2010 - 05:16) Димитер написал(а):
Интересный результат выдал: говорит, нет ни первого, ни второго файла, причем второй он как-то при этом удаляет.
Спустя 2 минуты, 56 секунд (24.08.2010 - 05:19) olgatcpip написал(а):
вооот. Значит... значит... ты поймал нервотрепку от php. Наслаждайся.
У меня такое часто бывает.
Что я делаю в таки случаях? написала в первых постах. Пробуйте и отпиитесь. интересно.
Прям так приятно что не у одной меня бред в коде бывает )
У меня такое часто бывает.
Что я делаю в таки случаях? написала в первых постах. Пробуйте и отпиитесь. интересно.
Прям так приятно что не у одной меня бред в коде бывает )
Спустя 7 минут, 57 секунд (24.08.2010 - 05:27) Димитер написал(а):
Тяжелый случай-файлы он все-таки видит, но не хочет удалять. Может, фича такая у unlink, что-то вроде того, что нельзя удалять два файла за один скрипт?
Попробовал квартетом-результат 3/3. Но разобраться все равно надо.
Попробовал квартетом-результат 3/3. Но разобраться все равно надо.
Спустя 27 минут, 12 секунд (24.08.2010 - 05:54) olgatcpip написал(а):
Цитата |
нельзя удалять два файла за один скрипт? |
это точно не так. я удаляю и в цикле бывает..
Цитата |
Попробовал квартетом-результат 3/3 |
только 1 удалился?
Спустя 37 секунд (24.08.2010 - 05:55) Димитер написал(а):
Всегда удалялись оба.
Понял причину-он удалял файлы и после этого сразу рожал mail}first, я, правда , не понял, почему. Наверное, вызов скрипта из другой функции программы.
Понял причину-он удалял файлы и после этого сразу рожал mail}first, я, правда , не понял, почему. Наверное, вызов скрипта из другой функции программы.
Спустя 1 минута, 19 секунд (24.08.2010 - 05:56) olgatcpip написал(а):
Димитер
это ты к чему?
про права я спрашивать не буду авось все нормально..
это ты к чему?
про права я спрашивать не буду авось все нормально..
Спустя 7 минут, 16 секунд (24.08.2010 - 06:04) olgatcpip написал(а):
попробовала у себя на винде.. работает..
Попробуй в другом месте, на другом сервере..
потом у себя.... потом ещё погугли, потом напиши в тех поддержку
Попробуй в другом месте, на другом сервере..
потом у себя.... потом ещё погугли, потом напиши в тех поддержку
Спустя 6 часов, 12 минут, 56 секунд (24.08.2010 - 12:17) Nikitian написал(а):
olgatcpip
ТС нашёл ошибку: файлы создавались асинхронно между удалением и проверкой наличия файлов.
ТС нашёл ошибку: файлы создавались асинхронно между удалением и проверкой наличия файлов.