- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Первый вариант
if (strpos($file, ".$ext")!==false) {
в принципе рабочий (если регистр совпадает)
А если и
if(preg_match('#\.'.$ext.'#i', $file)) {
не помогает,
то причина того что в админке пропадает выбор не в этой строке, а в чем-то другом.
Для исключения ошибки с функцией eregi и ее замены подходят оба варианта, а почему исчезает выбор скина, языка и темплейтов думаю надо искать где-то в другом месте.
почему исчезает выбор скина, языка и темплейтов думаю надо искать где-то в другом месте.
В том и дело, что как только устанавливаю строку старую - всё появляется, хотя Денвер указывает на ошибку с функцией :(
есть еще одно предположение:
понятия не имею что находится в переменных $ext и $file, но разница между строками
if(eregi(".$ext", $file)) {
и
if(preg_match('#\.'.$ext.'#i', $file)) {
заключается в том, что в первой строке в регулярном выражении точка означает любой символ, а во второй строке я ее закомментировал, чтобы она означала только точку
Valeriy, попробуйте еще такой вариант (чтобы точка означала любой символ)
if(preg_match('#.'.$ext.'#i', $file)) {
Valeriy, попробуйте еще такой вариант
Ура, заработало! (кот Матроскин)
gormarket, спасибище.
На всякий случай выложу кусок кода
$file_list = array();
if (!$handle = opendir("$path")) {
echo "<p>Can not open directory</p> ";
}
while (false !== ($file = readdir($handle))) {
if(preg_match('#.'.$ext.'#i', $file)) {
$file_arr = explode(".", $file);
$file_list["$file_arr[0]"]= $file_arr[0];
}
}
closedir($handle);
return $file_list;
}
Ну и слава богу. Поздравляю :)