[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Существование папки
zhenia3003
Почему когда в директории base/papki/ есть хоть 1 папка echo "1111" срабатывает, а когда нет ни одной папки, второе echo "2222" не работает (страница пустая).

foreach (glob("base/papki/*") as $p) {
if(file_exists($p)) {
echo "1111";
}else{
echo "2222";
}
}

linker
zhenia3003
Потому что цикл прекращает своё выполнение не начавшись.

_____________
Gear Framework
Gear Framework на Github
zhenia3003
Цитата (linker @ 29.07.2014 - 09:25)
zhenia3003
Потому что цикл прекращает своё выполнение не начавшись.

А как сделать тогда? ohmy.gif
linker
file_exists($p)
внутри цикла не имеет смысла вообще. Как сделать зависит от того, что тебе нужно в итоге.

_____________
Gear Framework
Gear Framework на Github
zhenia3003
в аналогичном более расширенном коде цикл выводит информацию из папок, Проблема в том, что если папок нет, страница пустая... хотел через echo информировать об отсутствии папок
linker
Например
$a = glob("base/papki/*");
if (empty($a))
echo 'Папка пустая';
else
foreach
($a as $p) {
}


_____________
Gear Framework
Gear Framework на Github
zhenia3003
Цитата (linker @ 29.07.2014 - 10:09)
Например
$a = glob("base/papki/*");
if (empty($a))
echo 'Папка пустая';
else
foreach
($a as $p) {
}

Спасибо, получилось! Работает с empty
zhenia3003
Последний вопрос. Приведенный выше код выводит инфу из папок. Ее я добавляю через form post, но инфа сразу на странице не отображается, мне приходиться вручную перезагружать страницу посредством f5 , чтобы она появилась. даже при переходе по ссылкам <a href> (по категорям) необходимо перезагружать страницу, чтоб увидеть свежую инфу. Как можно избавиться от данного лага??
linker
Не очень понятно, что требуется.

_____________
Gear Framework
Gear Framework на Github
Kusss
после добавления перезагрузить страницу

if (isset($_POST['add'])) {
// Тут выполняется добавление
.....
// Отправляем обратно
header('Location: '.$_SERVER['HTTP_REFERER'].'' );
die();
}
zhenia3003
я перезагружаю вот так

echo '<meta http-equiv="refresh" content="0;url='.$link.'?id='.$_REQUEST['id'].'">';
exit;

Сегодня заметил, что на втором компьютере инфа отображается сразу после добавления. Браузеры одинаковые. В любом случае спасибо за ответ
eXaM
Цитата (zhenia3003 @ 30.07.2014 - 06:36)
я перезагружаю вот так

echo '<meta http-equiv="refresh" content="0;url='.$link.'?id='.$_REQUEST['id'].'">';
exit;

Сегодня заметил, что на втором компьютере инфа отображается сразу после добавления. Браузеры одинаковые. В любом случае спасибо за ответ

Неправильно перезагружаете. Мета-теги должны быть в <head>, а если мы используем MVC, придется в шаблоне переменную иметь и так далее. Проще так:
header('location: ' . $link . '?id=' .$_REQUEST['id']);
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.