Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
 Аватар для crautcher
2450 / 2301 / 597
Регистрация: 27.05.2011
Сообщений: 7,845

File get contents функции

15.09.2015, 18:05. Показов 1314. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
SSH доступ. ХЗ какие натройки
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    function getFile ($path, $fName) {
            if (!empty($_GET['test'])) {
                ob_end_clean();
                #set_error_handler("myErrorHandler");
                error_reporting(E_ALL | E_STRICT);
                var_dump($path , is_readable($path));
                $data = file_get_contents($path);
                var_dump(sizeof($data) , filesize($path));
                die();
            }
            header ("Content-Disposition: attachment; filename=\"$fName\"");
            header ("Content-Type: application/pdf");           
            echo file_get_contents ($path);
            exit (0);
    }
$_GET['test'] == 1
string(133) "/www/vb-service/conf/../../vb/mokestiniai pranesimai/2015-08/Kosmoso 16/16-38-1808348-VB_mokestinis_702723.pdf"
bool(true)
int(1)
int(152099)
Отдается пустой файл всегда. Разные файлы пробовал. Поскольку должен отдаваться warning, а его нет, сервер намертво наверное ошибки не дает показывать. ХЗ как поймать, что не так. В /var/log не ведет лог ошибок.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
15.09.2015, 18:05
Ответы с готовыми решениями:

Вылетает ошибка! Warning: file_get_contents(main.tpl) [function.file-get-contents]: failed to open stream: No such file or directory in /home/u6958797
В чем может быть проблема <?php require_once "config_class.php"; require_once "article_class.php"; require_once...

File get contents тормозит
У меня file get contents подключается к ftp для получения содержания файлов/папок. Но если машина нагружена, то он очень долго загружается....

file get contents с параметрами
Есть страничка php с url формата mypage.php?one=1&two=2. С этой странички нужно вызвать другую с точно таким же форматом url, только...

11
 Аватар для Dolphin
814 / 797 / 201
Регистрация: 21.09.2012
Сообщений: 2,656
15.09.2015, 18:48
file_get_contents по моему опыту, понимает только абсолютные пути от корня сервера. Это корневая такая папка www или относительный путь?
0
 Аватар для crautcher
2450 / 2301 / 597
Регистрация: 27.05.2011
Сообщений: 7,845
15.09.2015, 18:57  [ТС]
Цитата Сообщение от Dolphin Посмотреть сообщение
Это корневая такая папка www или относительный путь?
Корневая. readfile тот-же эффект
0
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
15.09.2015, 19:28
Цитата Сообщение от Dolphin Посмотреть сообщение
file_get_contents по моему опыту, понимает только абсолютные пути от корня сервера
Ничего подобного. Да и откуда filesize() = 152099 тогда.

У меня скрипт работает.

Я бы посмотрел какие заголовки сервер при этом отдает. Или попробовал бы Content-Length указать.

Добавлено через 3 минуты

Не по теме:

Про filesize() я конечно не в тему немного...

0
 Аватар для Dolphin
814 / 797 / 201
Регистрация: 21.09.2012
Сообщений: 2,656
15.09.2015, 19:28
Если так поменять?
PHP
1
2
ini_set('display_errors', 1);
error_reporting(-1);
А вообще интересно как то. А что лежит тогда в самой $data переменной?
0
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
15.09.2015, 19:29
Вместо sizeof(), который ничего не дает, туда бы strlen()...
1
 Аватар для Dolphin
814 / 797 / 201
Регистрация: 21.09.2012
Сообщений: 2,656
15.09.2015, 19:30
Цитата Сообщение от pav1uxa Посмотреть сообщение
Ничего подобного.
Не спорю, но как то были проблемы при переносах. Поэтому стараюсь везде ставить полный путь
0
 Аватар для crautcher
2450 / 2301 / 597
Регистрация: 27.05.2011
Сообщений: 7,845
15.09.2015, 20:29  [ТС]
Цитата Сообщение от pav1uxa Посмотреть сообщение
Вместо sizeof(), который ничего не дает, туда бы strlen()...
Туплю под конец дня.
int(152099) int(152099)
Все байты получены. файл качается - 0 байт. О.о
Если добавляю хидер Content-Length:, то вообще в загрузках браузера висит "Starting". через минуту 0 байтовый файл.
0
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
15.09.2015, 21:04
Цитата Сообщение от crautcher Посмотреть сообщение
через минуту 0 байтовый файл.
чудеса какие... может браузер подхватил что-то, может антивирус\фаервол чудит..

И все же, какие заголовки то сервер отправляет (все)?
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
16.09.2015, 07:48
может, проблема в самих настройках сервера?
Попробуй добавить в .htaccess
Bash
1
2
3
4
<FilesMatch "\.(pdf)$" >
    ForceType application/pdf
    Header add Content-Disposition "attachment"
</FilesMatch>
0
16.09.2015, 12:53

Не по теме:

А может все-таки сначала посмотреть - какие заголовки он отправляет, прежде чем настраивать их... :)

0
 Аватар для crautcher
2450 / 2301 / 597
Регистрация: 27.05.2011
Сообщений: 7,845
17.09.2015, 14:35  [ТС]
Цитата Сообщение от KOPOJI Посмотреть сообщение
Попробуй добавить в .htaccess
Неа. Не помогло. Получил доступ к настройкам сервера. Включил лог ошибок. Завтра, надеюсь, пойму в чем странное поведение.

Добавлено через 20 часов 35 минут
В общем, когда не обнаружил ошибок, сразу понял в чем косяк. ob_end_flush() перед выводом содержимого помогло делу.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.09.2015, 14:35
Помогаю со студенческими работами здесь

file get contents ошибка при отсутствии файла
В общем мне нужно file_get_contents (либо другим способом) получить содержимое текстового файла с другого сайта. $fp =...

Ошибка file-put-contents: не берет название файла из массива
Привет всем! Скачиваю подборку статей в папку, в массиве $urla_array адреса для скачивания, а в массиве $postname_array -названия...

Аякс отправка файла Warning: file_get_contents() [function.file-get-contents]: Filename cannot be empty in
Здравствуйте. Такая проблема при попытке отправки файла через форму аяксом появляется ошибка: Warning: file_get_contents() :...

Ошибка file get contents: failed to open stream
Здравствуйте. Решил создать магазин на движке MacPay 3.3. Всё настроил, оплату qiwi и т.д. При проверке платежа как и должно, открывается...

Ошибка in execfile exec(compile(contents+"\n", file, 'exec'), glob, loc)
Traceback (most recent call last): File &quot;&lt;input&gt;&quot;, line 1, in &lt;module&gt; File &quot;C:\Program Files\JetBrains\PyCharm...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru