Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 29.08.2008, 11:53   #1
hoba
Пользователь
 
Регистрация: 23.08.2008
Сообщений: 40
Репутация: 22
По умолчанию Проверить существует ли путь и создать если его нет

При сохранении файла на сервер по средством PHP скрипта если на сервере не существует папки в которую должен быть помещен файл, то возникает ошибка и файл не создается.
Как сделать проверку на сушествование этого пути и создать его.
hoba вне форума   Ответить с цитированием
Старый 29.08.2008, 13:20   #2
SkyM@n
Laravel/Vue expert
Профессионал
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Адрес: /dev/random
Сообщений: 2,834
Репутация: 927
По умолчанию

http://ua.php.net/manual/ru/ref.filesystem.php
Что-то типа этого
PHP код:
<?php
$filename 
'/path/to/foo.txt';

if (
file_exists($filename)) {
   echo 
"Uploading..."
} else {
   
mkdir($filename0700true);
}
?>

Последний раз редактировалось SkyM@n; 29.08.2008 в 13:24.
SkyM@n вне форума   Ответить с цитированием
Старый 29.08.2008, 13:26   #3
SkyM@n
Laravel/Vue expert
Профессионал
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Адрес: /dev/random
Сообщений: 2,834
Репутация: 927
По умолчанию

Цитата:
Сообщение от hoba Посмотреть сообщение
если на сервере не существует папки в которую должен быть помещен файл
А каким образом формирутся пути? Ведь не пользователем?
программист изначально должен нормально написать процедуру сохранения файла.
SkyM@n вне форума   Ответить с цитированием
Старый 29.08.2008, 14:05   #4
hoba
Пользователь
 
Регистрация: 23.08.2008
Сообщений: 40
Репутация: 22
По умолчанию

Цитата:
mkdir($filename, 0700, true);
Я и не думал что так все просто. Хотел было разбивать вначале на подпапки и потом создавать по отдельности. Во я глюк!!! Благодарю за помощь!
Цитата:
А каким образом формирутся пути? Ведь не пользователем?
Этоа часть относится к системе администрирование. А если точнее то файловый менеджер сайта. Просто мне недавно пришлось администрировать сайт где нет FTP доступа.
hoba вне форума   Ответить с цитированием
Старый 29.08.2008, 14:23   #5
SkyM@n
Laravel/Vue expert
Профессионал
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Адрес: /dev/random
Сообщений: 2,834
Репутация: 927
По умолчанию

Цитата:
Сообщение от hoba Посмотреть сообщение
Хотел было разбивать вначале на подпапки и потом создавать по отдельности.
К сожалению, если РНР - ниже 5-й версии, то таки придется рекурсию делать самому. как вы и хотели.
SkyM@n вне форума   Ответить с цитированием
Старый 29.08.2008, 14:35   #6
hoba
Пользователь
 
Регистрация: 23.08.2008
Сообщений: 40
Репутация: 22
По умолчанию

Цитата:
К сожалению, если РНР - ниже 5-й версии...
Н амоем компе стоит 5 версия но всеравно почему-то не получилось. Папка не создалась. А на сервере где мой сайт - стоит 4 версия.
Цитата:
....придется рекурсию делать...

Последний раз редактировалось hoba; 29.08.2008 в 14:41.
hoba вне форума   Ответить с цитированием
Старый 29.08.2008, 14:40   #7
hoba
Пользователь
 
Регистрация: 23.08.2008
Сообщений: 40
Репутация: 22
По умолчанию

уже делает. Слеш один лишний в начале '/path/to/foo.txt' надо так 'path/to/foo.txt'. Правда кроме всего прочего он создает еще и папку foo.txt.
hoba вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Если функция ЕСЛИ не подходит Katherina_Koval Microsoft Office Excel 1 25.07.2008 19:09
sql-сервер не существует rubi БД в Delphi 8 15.07.2008 12:10
существует ли файл? subsonic Общие вопросы Delphi 8 10.01.2008 04:17
А что, если всем объедениться и создать что-нибудь глобальное? kuzmich Свободное общение 61 31.05.2007 21:01
А если всем объедениться и создать что-нибудь глобальное? Viteef Свободное общение 37 21.05.2007 16:10


18:20.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru