Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Полный/относительный путь, Не отображается картинка 
V
    Опции темы
HackMan
Дата 28.8.2007, 23:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Юзверь-программист
**


Профиль
Группа: Участник
Сообщений: 391
Регистрация: 18.6.2005
Где: .ua

Репутация: 8
Всего: 9



Для того, что бы сохранить на сервере картинку - надо указывать полный путь ("/home/test1.ru/project/data/home/1.jpg"), а для того что бы отобразить картинку в браузере - первый вариант не работает, надо указывать относительный путь ("/project/data/home/1.jpg")
dirname($_SERVER['PHP_SELF']) возвращает "/project".
Как лучше всего решить данную проблему? Надо узнавать отдельно полный путь и отдельно путь относительно базовой директории сайта? Или это только в DENWER так, что dirname($_SERVER['PHP_SELF']) выдаёт относительный путь?
Вобщем, запутался  smile 

Вот код сохранения изображения
Код

imagejpeg($destination, $homedir . "/data/home/" . $filename, 70);


А вот код вставки этой картинки в браузер 
Код

<div align="center"><img src="<?php echo $homedir . "/data/home/" . $row['filename']?>"></div>


С конструкцией 
Код

$homedir = dirname($_SERVER['PHP_SELF']);

файл  отказывается сохраняться...

Это сообщение отредактировал(а) HackMan - 28.8.2007, 23:06


--------------------

Завтра - это самый загруженный день недели smile

user posted image

user posted image
PM MAIL ICQ   Вверх
console
Дата 28.8.2007, 23:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 307
Регистрация: 12.2.2007
Где: Belarus::Minsk

Репутация: 2
Всего: 3



Цитата(HackMan @  28.8.2007,  22:00 Найти цитируемый пост)
надо указывать относительный путь ("/project/data/home/1.jpg")

Это относительный путь? Что-то новенькое...


--------------------
user posted image
Nothing is impossible
My WeBlog
PM MAIL WWW ICQ   Вверх
HackMan
Дата 28.8.2007, 23:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Юзверь-программист
**


Профиль
Группа: Участник
Сообщений: 391
Регистрация: 18.6.2005
Где: .ua

Репутация: 8
Всего: 9



Ну это путь, относительно моего виртуального сервера... А полный путь: Z:\home\test1.ru\www\project (/home/test1.ru/www/project)

Добавлено @ 23:27
Если я не прав - разъясните, пожалуйста, я сам уже сильно запутался - спать охота...  smile 

Это сообщение отредактировал(а) HackMan - 28.8.2007, 23:28


--------------------

Завтра - это самый загруженный день недели smile

user posted image

user posted image
PM MAIL ICQ   Вверх
console
Дата 28.8.2007, 23:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 307
Регистрация: 12.2.2007
Где: Belarus::Minsk

Репутация: 2
Всего: 3



Цитата(HackMan @  28.8.2007,  22:00 Найти цитируемый пост)
Для того, что бы сохранить на сервере картинку - надо указывать полный путь

Каким образом сохранить и почему именно полный путь?


--------------------
user posted image
Nothing is impossible
My WeBlog
PM MAIL WWW ICQ   Вверх
HackMan
Дата 28.8.2007, 23:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Юзверь-программист
**


Профиль
Группа: Участник
Сообщений: 391
Регистрация: 18.6.2005
Где: .ua

Репутация: 8
Всего: 9



Я принимаю от пользователя картинку и сразу же её обрабатываю
Код

...
  $tempfile = $_FILES['photo']['tmp_name'];
  $filename = md5(microtime()).".jpg";
...
  $source = imagecreatefromjpeg($tempfile);
...
  imagejpeg($destination, "{$homedir}/data/home/{$filename}", 70);
...


В $homedir у меня получается "/project". Таким образом картинка не сохраняется - пишет: "не могу сохранить по такому-то пути", а сохраняет только если перед этим "/project" будет ещё указано "/home/test1.ru/www"


--------------------

Завтра - это самый загруженный день недели smile

user posted image

user posted image
PM MAIL ICQ   Вверх
console
Дата 29.8.2007, 00:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 307
Регистрация: 12.2.2007
Где: Belarus::Minsk

Репутация: 2
Всего: 3



На php.net есть примеры с относительным путем в imagejpeg()


--------------------
user posted image
Nothing is impossible
My WeBlog
PM MAIL WWW ICQ   Вверх
HackMan
Дата 29.8.2007, 00:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Юзверь-программист
**


Профиль
Группа: Участник
Сообщений: 391
Регистрация: 18.6.2005
Где: .ua

Репутация: 8
Всего: 9



Спасибо!
Вопрос решён. Причина - как всегда, простая невнимательность...  smile 
У меня код обработки картинки был в скрипте, который подключается к главному. Главный скрипт в корневой директории, а подключаемый - на один уровень ниже...
Приставка "../" послужила решением данной проблемы  smile 

Код

imagejpeg($destination, "../{$homedir}/data/home/{$filename}", 70);


Это сообщение отредактировал(а) HackMan - 29.8.2007, 00:12


--------------------

Завтра - это самый загруженный день недели smile

user posted image

user posted image
PM MAIL ICQ   Вверх
anurbol
Дата 29.8.2007, 07:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 106
Регистрация: 30.5.2007
Где: Алматы, Казахстан

Репутация: нет
Всего: нет



Чтобы такого неслучалось я обычно использую echo getcwd();
PM MAIL   Вверх
reich
  Дата 29.8.2007, 09:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 41
Регистрация: 3.8.2007
Где: UA

Репутация: -1
Всего: -6



Не знаю, в тему мое сообщение или нет, но я делаю конфиг, в котором указывается путь от корня диска к папке с сайтом(например) и потом прибавляю этот путь ко всему, что надо подключить.(кроме css и картинок, то есть то, что может увидеть юзер в html коде страницы)
вот пример:
файл конфигурации
Код

//configuration.php
$CONFIG['ABSOLUTE_PATH'] = "C:/www/example";

файл, в который подключает что-то
Код

//some_file.php
require_once($CONFIG['ABSOLUTE_PATH'].'/lib/scritp.php');

Потом, есть папка template, в которой хранятся html коды, css и картинки(template/img)
и подключение картинок выглядит так:
Код

<img src="./template/img/pict.jpg" />

--------------------------
Вот еще вспомнил, что можно в конфиге прописать URL сайта
Код

//configuration.php
$CONFIG['SITE_URL'] = "http://example.com";

и потом, при вставке картинки можно делать так:
Код

<img src="<?php echo $CONFIG['SITE_URL']; ?>/templates/img/pict.jpg";


 smile 

Это сообщение отредактировал(а) reich - 29.8.2007, 09:57
PM MAIL ICQ   Вверх
console
Дата 29.8.2007, 17:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 307
Регистрация: 12.2.2007
Где: Belarus::Minsk

Репутация: 2
Всего: 3



Статичный конфиг, а если перенести в другую папку... все


--------------------
user posted image
Nothing is impossible
My WeBlog
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0892 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.