Intereting Posts
Показать все страницы – в порядке Как проверить, находится ли пользователь в конце? Медиа-галерея – вставка полноразмерных изображений без ссылки Пользовательский налоговый запрос со специальными символами Как добавить один тег к нескольким сообщениям? Как использовать пользовательскую таблицу стилей только для шаблона в дочерней теме Создание (и редактирование существующих) сообщений с идентификатором current_shortcode () – обнаружение используемого в настоящее время короткого кода почему у моего wordpress нет панели инструментов, плагина, тем и других? Shortcode для последних – не истекших сообщений Папка без WordPress в WordPress Site Перебирайте пользовательские сообщения по таксономии и отобразите заголовки в списке, он повторяется 8 раз Pagination – ссылка на базовую страницу – Страница 1 Архивный виджет – ограничение количества месяцев до 12 Есть ли способ по умолчанию в wordpress для создания наложения в панели управления?

Как эхо текст в браузере вместо загрузки мусорного файла?

У меня есть настраиваемый плагин, который был разработан для меня некоторое время назад, и я пытаюсь настроить его действие и исправить небольшую ошибку.

На основе определенных условий плагин предоставляет пользователю пользовательский url / link для zip-файла для загрузки. Он маскирует местоположение файла перед загрузкой, чтобы скрыть местоположение от пользователя. Он работает нормально при нормальных обстоятельствах: если у пользователя есть файл, назначенный им, отображается ссылка на файл загрузки, и он загружает zip-файл через браузер в порядке. Но если файл не существует, вместо него загружается файл junk / malformed zip / html.

Я хочу, чтобы экран просто отображал «Извините, файл не найден» – ничего больше.

Это код, который в настоящее время предоставляется в файле маски загрузки.

<?php /** * **/ $file = base64_decode($_GET['file']); if($file === '' || !isset($file)){ echo "Sorry, file not found."; die(); }else{ header('Content-Description: File Transfer'); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename="'.basename($file).'"'); header('Expires: 0'); header('Cache-Control: must-revalidate'); header('Pragma: public'); readfile($file); exit; } 

Это содержимое искаженного файла, который загружается.

 <br /> <b>Warning</b>: readfile(http://{domain(dot)com/{somedirectory}/{somefilename}.zip): failed to open stream: HTTP request failed! HTTP/1.0 404 Not Found in <b>/home/{account}/public_html/wp-content/plugins/{customplugin}/downloadmask.php</b> on line <b>18</b><br /> 

Кто-то сказал, что это потому, что у меня есть предупреждения и уведомления о PHP? Dunno, я noobie / взломать, когда дело доходит до PHP – только достаточно знать, чтобы, вероятно, попасть в беду. Но я хочу учиться 🙂

Благодарю.

Это изменение не проверено:

 if( $file === '' || ! isset( $file ) || ! file_exists( $file ) ) {