Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: работа с файлами
 
 автор: averkov   (27.11.2009 в 13:37)   письмо автору
 
 

Я на PHP записываю файл с именем ($filename - это изображение) в папку files/thumbs/. Потом хочу открыть его, пишу:

<?php
$c 
fopen ($filename,'r','files/thumbs/');
echo 
$c;
?>

Ничего не получается! Как быть? В чём я ошибаюсь?

  Ответить  
 
 автор: tvv123456   (27.11.2009 в 13:42)   письмо автору
 
   для: averkov   (27.11.2009 в 13:37)
 


<?php
echo '<img src="files/thumbs/'.$filename.'">';

?>

вам это нужно?

  Ответить  
 
 автор: averkov   (27.11.2009 в 13:47)   письмо автору
 
   для: tvv123456   (27.11.2009 в 13:42)
 

Да, низкий поклон, но я не пойму - функция fopen должна же работать в моём случае?

  Ответить  
 
 автор: sim5   (27.11.2009 в 13:55)   письмо автору
 
   для: averkov   (27.11.2009 в 13:47)
 

Ну во-первых вы не указали для нее имени файла, а во-вторых зачем?

  Ответить  
 
 автор: averkov   (27.11.2009 в 14:34)   письмо автору
 
   для: sim5   (27.11.2009 в 13:55)
 

Я должен путь в функции указывать так:

'files/thumbs/'.$filename.''

  Ответить  
 
 автор: tvv123456   (27.11.2009 в 14:36)   письмо автору
 
   для: averkov   (27.11.2009 в 14:34)
 

Ну последние 2 апострафа и точка точно лишние

  Ответить  
 
 автор: sim5   (27.11.2009 в 14:47)   письмо автору
 
   для: averkov   (27.11.2009 в 14:34)
 

Зачем вам fopen открывать изображение?

  Ответить  
 
 автор: Trianon   (27.11.2009 в 14:58)   письмо автору
 
   для: sim5   (27.11.2009 в 14:47)
 

Человек файл хочет открыть. Не изображение.

  Ответить  
 
 автор: tvv123456   (27.11.2009 в 15:03)   письмо автору
 
   для: Trianon   (27.11.2009 в 14:58)
 

А все-таки может изображение?

раз ему подошел вариант написаный в первом ответе

  Ответить  
 
 автор: Trianon   (27.11.2009 в 17:02)   письмо автору
 
   для: tvv123456   (27.11.2009 в 15:03)
 

на этот вариант он ответил: да, но...
выходит, всё же файл.
Да и тема подтверждает.

  Ответить  
 
 автор: sim5   (27.11.2009 в 15:09)   письмо автору
 
   для: Trianon   (27.11.2009 в 14:58)
 

>автор: averkov (27.11.2009 в 13:37) письмо автору

>Я на PHP записываю файл с именем ($filename - это изображение)

То что задом наперед аргументы функции, и лишние, это второй вопрос - зачем его открывать, меня интересует? )

  Ответить  
 
 автор: Trianon   (27.11.2009 в 16:29)   письмо автору
 
   для: sim5   (27.11.2009 в 15:09)
 

Вы хотите, чтоб у человека что-то получилось.
Я хочу, чтоб он наконец начал думать. И тогда у него получится не что-то, но всё.

  Ответить  
 
 автор: sim5   (27.11.2009 в 16:44)   письмо автору
 
   для: Trianon   (27.11.2009 в 16:29)
 

Нет, мне интересно знать - для чего? )

  Ответить  
 
 автор: Trianon   (27.11.2009 в 17:52)   письмо автору
 
   для: sim5   (27.11.2009 в 16:44)
 

Например, чтобы определить, является ли gif анимированным.
:)

  Ответить  
 
 автор: sim5   (27.11.2009 в 18:02)   письмо автору
 
   для: Trianon   (27.11.2009 в 17:52)
 

С таким написанием автором fopen, это было бы круто :)

  Ответить  
 
 автор: Trianon   (27.11.2009 в 14:35)   письмо автору
 
   для: averkov   (27.11.2009 в 13:47)
 

а что, echo совсем ничего не выводит?
Хотя с другой стороны - что ему выводить, если Вы третий параметр зачем-то сунули...

  Ответить  
 
 автор: neadekvat   (27.11.2009 в 15:10)   письмо автору
 
   для: averkov   (27.11.2009 в 13:37)
 

resource fopen ( string $filename , string $mode [, bool $use_include_path = false [, resource $context ]] )

третий параметр - не адрес include_path, а вопрос, использовать include_path или нет.

  Ответить  
 
 автор: averkov   (28.11.2009 в 00:21)   письмо автору
 
   для: neadekvat   (27.11.2009 в 15:10)
 

Вы знаете, конечно же я хочу проверить как работает функция fopen. Вначале диалога написан код моей задачи. Я файл-изображение отправил на сервер, многое что в нём изменил, всё работает как часы, но увидеть записанное и изменённое изображение без тегов НTML у меня не получается. Если у меня в аргументах появляется квадратная скобка, то Денвер её не определяет, а в других случаях он не находит файл. Как быть, в чём я ошибаюсь, или что-то недопонимаю? Здесь записей много, но нужного ответа нет

  Ответить  
 
 автор: Trianon   (28.11.2009 в 00:24)   письмо автору
 
   для: averkov   (28.11.2009 в 00:21)
 

<?php
    header
("Content-Type: Image/jpeg");
    
$f fopen('имя_файла_с_полным_путем.jpg',  'rb');
    
fpassthru($f);
    
fclose($f);
?>

проверяйте.

  Ответить  
 
 автор: averkov   (28.11.2009 в 11:41)   письмо автору
 
   для: Trianon   (28.11.2009 в 00:24)
 

Проверил - не получается.

  Ответить  
 
 автор: neadekvat   (28.11.2009 в 07:31)   письмо автору
 
   для: averkov   (28.11.2009 в 00:21)
 

Какой вопрос - такой ответ.
Указывайте не имя картинки, а путь до неё от корневой папки (как уже сказал Trianon) и не указывайте третьего параметра

  Ответить  
 
 автор: averkov   (28.11.2009 в 11:49)   письмо автору
 
   для: neadekvat   (28.11.2009 в 07:31)
 

Теперь я понял свою ошибку, громадное спасибо, но как в браузере увидеть фото? С помощью функции fpassthru не выходит, пробовал функцию imagejpeg - не получается.

  Ответить  
 
 автор: sim5   (28.11.2009 в 12:02)   письмо автору
 
   для: averkov   (28.11.2009 в 11:49)
 

Для браузера достаточно прописать тег:
<img src="тут путь к изображению на сервере" width="ширина изображения" height="высота изображения" />
Тег может соджержать и другие необязательные атрибуты.
То что вы пытаетесь сделать, обычно требется при отдачи изображения через скрипт, и вам, надо полагать, в данной ситуации совсем не нужно.

  Ответить  
 
 автор: averkov   (28.11.2009 в 12:38)   письмо автору
 
   для: sim5   (28.11.2009 в 12:02)
 

Вот этот скрипт я и пытаюсь создать, пробовал много вариантов, даже тот, который дан в диалоге, результат пока отрицательный, но скрипт ведь можно же написать?

Думаю, логика скрипта такова:
- открыть файл;
- вывести его в браузер;
- echo'м развернуть фото

  Ответить  
 
 автор: sim5   (28.11.2009 в 13:01)   письмо автору
 
   для: averkov   (28.11.2009 в 12:38)
 

Если пользователю надо отдать файл посредством скрипта, то есть, он жмахнет кнопочку "Скачать...", а вы ему отдадите этот файл через скрипт. Это одно.
А вывести в браузер, так для этого служит тег IMG, который вам приводили уже неоднократно, и заморочек со скриптом, в этом случае, с никаким не требуется, кроме как, например, вывод каптчи, динамический.
И так, вам что надо:
1. Просто вывести изображение в браузер?
2. Отдать пользователю изображение посредством скрипта, не выводя его в браузер?

  Ответить  
 
 автор: averkov   (28.11.2009 в 20:00)   письмо автору
 
   для: sim5   (28.11.2009 в 13:01)
 

1 вариант, без тегов HTML, только через PHP

  Ответить  
 
 автор: tvv123456   (28.11.2009 в 20:29)   письмо автору
 
   для: averkov   (28.11.2009 в 20:00)
 

>1 вариант, без тегов HTML, только через PHP
а не чего что браузеры обрабатывают только html, а рнр по сути генерирует html страничку и отдает ее браузеру

  Ответить  
 
 автор: Jackkum   (28.11.2009 в 20:58)   письмо автору
 
   для: averkov   (28.11.2009 в 20:00)
 


header("Content-Type: Image/jpeg");


Браузер выведет на экран картинку, он всегда так делает, просто откроет её вместо html документа...

  Ответить  
 
 автор: tvv123456   (28.11.2009 в 21:03)   письмо автору
 
   для: Jackkum   (28.11.2009 в 20:58)
 

Ну да будет выводиться сырой поток, но автору темы это не подойдет(в этом случае вся страница будет отображаться как картинка(опять коряво сказал)), зачем зря напрягаться хотите понять суть читайте посты sim5 AND trionon они все так описали что не понять просто невозможно

  Ответить  
 
 автор: Trianon   (28.11.2009 в 23:20)   письмо автору
 
   для: tvv123456   (28.11.2009 в 21:03)
 

я бы попросил.

  Ответить  
 
 автор: sim5   (29.11.2009 в 05:52)   письмо автору
 
   для: averkov   (28.11.2009 в 20:00)
 

Без HTML-тегов, это не изображение на странице. Лучше раскажите сообществу, какую задачу вы решаете. А то вы путаете хрен с редькой, по крайней мере у меня такое впечатление.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования