Адрес сайта в названии файла

Тема закрыта
346
.
Koenig
(\/)____o_O____(\/)
$name = 'file.ext';
$ext = explode('.', $name);
$newname = $ext[0] . '_' . 'site.ru.' . $ext[1];
.
Ей 25
# Hat-Trik (17.08.2013 / 16:55)
думаю автор нифига не понял
Все понятно. Тем более автору и так обьяснили уже как решить его проблему.
.
Ей 25
# Koenig (17.08.2013 / 17:01)
$name = 'file.ext';
$ext = explode('.', $name);
$newname = $ext[0] . '_' . 'site.ru.' . $ext[1];
$name = $home . '_file.ext';
или
$name = 'site.ru_file.ext';
Так же проще. Найти строку где имя файла задается, дописать туда урл сайта и все.
.
Вот содержания файла down.php
<?php

/*
////////////////////////////////////////////////////////////////////////////////
// JohnCMS                             Content Management System              //
// Официальный сайт сайт проекта:      http://johncms.com                     //
// Дополнительный сайт поддержки:      http://gazenwagen.com                  //
////////////////////////////////////////////////////////////////////////////////
// JohnCMS core team:                                                         //
// Евгений Рябинин aka john77          john77@gazenwagen.com                  //
// Олег Касьянов aka AlkatraZ          alkatraz@gazenwagen.com                //
//                                                                            //
// Информацию о версиях смотрите в прилагаемом файле version.txt              //
////////////////////////////////////////////////////////////////////////////////
*/

defined('_IN_JOHNCMS') or die('Error: restricted access');

$fil = mysql_query("select * from `download` where id='$id';");
$mas = mysql_fetch_array($fil);
if (!empty ($mas[name])) {
    if (file_exists("$mas[adres]/$mas[name]")) {
        $sc = $mas[ip] + 1;
        mysql_query("update `download` set ip = '" . $sc . "' where id = '" . $id . "';");
        $_SESSION['upl'] = "";
        header("location: $mas[adres]/$mas[name]");
    }
}


?>


что в него нужно дописать?
.
Это можно реализовать средствами .htaccess
В .htaccess расположенном в папке, где у тебя лежат файлы нужно прописать:
<Files *.doc> // выбираем расширение файлов, с которыми в данный момент будем работать
ForceType application/octet-stream // принудительное скачивание, дабы браузер не пытался его открыть
Header set Content-Disposition "attachment; filename=имя_сайта.doc"
</Files>

Посоле этого, все doc-овские файлы должны скачиваться с именем прописанным в filename.
Правда я не знаю, будет ли это работать в случаях, когда файл отдается скриптом, как на john.
.
(\/)____o_O____(\/)
xpank, на джоне вроде редирект, скрипт только счетчик обновляет
.
(\/)____o_O____(\/)
kolian2000, давай код свой, или скажи где в каком месте сайта , если это джон нужен вывод имени файла
.
Koenig, У меня johncms 4.4.0
.
(\/)____o_O____(\/)
kolian2000, это надо поменять
header("location: $mas[adres]/$mas[name]");
на другие заголовки, и отдать файл с новым именем который лежит
$mas[adres]/$mas[name]
.
Koenig
(\/)____o_O____(\/)
ob_end_clean();
ob_start();
echo file_get_contents($mas['adres']/$mas['name']);
header ('Content-Type: application/octet-stream');
header('Content-Description: inline; File Transfer');
header('Content-Disposition: attachment; filename="sitename' . $mas['name'] . '";', false);
header('Content-Transfer-Encoding: binary');
header('Content-Length: ' . ob_get_length());
ob_flush();
flush();
Всего: 25