function full_del_dir ($delVar)
{
$dir = opendir("../../Marki/Audi/$delVar");
while(($file = readdir($dir)))
{
if ( is_file ("../../Marki/$marka/$delVar/$file"))
{
unlink ("../../Marki/$marka/$file");
}
else if ( is_file ("../../Marki/$marka/$delVar/$file") &&
($file != ".") && ($file != ".."))
closedir ($dir);};
rmdir ("../../Marki/Audi/$delVar");
};
Вот так не работает:
function full_del_dir ($delVar)
{
$dir = opendir("../../Marki/$marka/$delVar");
while(($file = readdir($dir)))
{
if ( is_file ("../../Marki/$marka/$delVar/$file"))
{
unlink ("../../Marki/$marka/$file");
}
else if ( is_file ("../../Marki/$marka/$delVar/$file") &&
($file != ".") && ($file != ".."))
closedir ($dir);};
rmdir ("../../Marki/$marka/$delVar");
};
Не видит значение $marka вверху и внизу.
Вот ошибка:
Warning: opendir(../../Marki//A1) [function.opendir]: failed to open dir: No error in Z:\home\foto\www\admin\phpact\actmodelidel.php on line 25
Warning: readdir(): supplied argument is not a valid Directory resource in Z:\home\foto\www\admin\phpact\actmodelidel.php on line 26
Warning: rmdir(../../Marki//A1) [function.rmdir]: No such file or directory in Z:\home\foto\www\admin\phpact\actmodelidel.php on line 35
почему???
Спустя 3 минуты, 56 секунд (18.01.2010 - 17:50) Lex_R написал(а):
У вас переменная $marka глобальная? Если да, то передавайте ее в функцию в качестве параметра или в начале функции напишите global $marka
Спустя 2 минуты, 18 секунд (18.01.2010 - 17:53) Guest написал(а):
Она ничем не отличается от $delVar ... почему одна работает другая нет?
Спустя 3 минуты, 32 секунды (18.01.2010 - 17:56) Lex_R написал(а):
Отличается. Значение одной переменной вы передаете в функцию, а другой нет. Вот почитайте
Спустя 1 минута, 43 секунды (18.01.2010 - 17:58) Winston написал(а):
Почему так:
Цитата (buschrutt @ 18.01.2010 - 17:46) |
while(($file = readdir($dir))) |
а не так
while($file = readdir($dir))
и вместо else if пиши elseif.
Спустя 59 секунд (18.01.2010 - 17:59) Guest написал(а):
кажется понял про что Вы...но у меня в другом файле такой же скрипт но без вложения $marka ... только $delVar и в функции тоже ее использую... вроде работает.
Спустя 1 минута, 50 секунд (18.01.2010 - 18:01) Guest написал(а):
Цитата |
и вместо else if пиши elseif. |
Видимо книжка старая. Там такой синтаксис
Спустя 1 минута, 57 секунд (18.01.2010 - 18:03) Guest написал(а):
Цитата |
или в начале функции напишите global $marka |
Могу я это написать в начале скрипта или именно перед функцией?
Спустя 9 минут, 55 секунд (18.01.2010 - 18:13) Lex_R написал(а):
Именно в начале функции
Спустя 36 минут, 22 секунды (18.01.2010 - 18:49) sergeiss написал(а):
Цитата (PHPprogramer @ 18.01.2010 - 18:58) |
и вместо else if пиши elseif. |
Не обязательно. Можно и так, и эдак. Всё зависит от того, что хотим получить.
В данном случае вообще без разницы.