реклама на каждую страницу (.htaccess или?)
От: delorge  
Дата: 12.07.06 06:08
Оценка:
Допустим есть на сайте папка скажем http://mysite.com/userfolder
Есть пользователь, имеющий права 777 на эту папку
Нужно наверх каждой страницы, которая открывается из этой папки (включая *.htm, *.html, *.php, *.pl , *.cgi)
помещать при выводе рекламный баннер, причем так, чтобы юзер никак от него не мог избавится.

Подозреваю, что какое-то RewriteRule надо в .htaccess прописывать, чтобы сначала вызывался скрипт (сайт на PHP), который выводит баннер, а потом нужную страницу. Или может по-другому надо?

Как это по-правильному делается, кто сталкивался?
Re: реклама на каждую страницу (.htaccess или?)
От: UserAd Россия http://userad.net.ru
Дата: 12.07.06 06:24
Оценка: 1 (1)
D>Подозреваю, что какое-то RewriteRule надо в .htaccess прописывать, чтобы сначала вызывался скрипт (сайт на PHP), который выводит баннер, а потом нужную страницу. Или может по-другому надо?

Да, выше уровнем пишется что все запросы перенаправляются на php файлик с параметром запроса ....
Но! если там в папке есть динамика (php,perl ...) то придётся чинить GET параметры .... (это я про РНР).

А если статика то всё нормально ....

Пример:
RewriteEngine On
RewriteBase /new/

RewriteRule !^index.php$(.*)    -    [C]
RewriteRule ^([a-zA-Z0-9\-_/\+\.]+)$ /index.php?гкд=$1
Re[2]: реклама на каждую страницу (.htaccess или?)
От: Аноним  
Дата: 12.07.06 16:26
Оценка:
Здравствуйте, UserAd, Вы писали:

D>>Подозреваю, что какое-то RewriteRule надо в .htaccess прописывать, чтобы сначала вызывался скрипт (сайт на PHP), который выводит баннер, а потом нужную страницу. Или может по-другому надо?


UA>Да, выше уровнем пишется что все запросы перенаправляются на php файлик с параметром запроса ....

UA>Но! если там в папке есть динамика (php,perl ...) то придётся чинить GET параметры .... (это я про РНР).

UA>А если статика то всё нормально ....


UA>Пример:

UA>
UA>RewriteEngine On
UA>RewriteBase /new/

UA>RewriteRule !^index.php$(.*)    -    [C]
UA>RewriteRule ^([a-zA-Z0-9\-_/\+\.]+)$ /index.php?гкд=$1 
UA>


А чинить GET-параметры — это как?
Прописал в .htaccess, со статикой все пашет.

Пытаюсь передать GET-параметр в скрипт. Пишу в строке браузера:

http://myhost.com/newfolder/setup.php?go=forward

В index.php делаю echo var_dump($_GET);

Получаю только:

array(1) { ["url"]=> string(19) "newfolder/setup.php" }

Можно как-нибудь в тот же скрипт GET-параметр передать?
В любом виде, главное чтобы было.
А то решение очень простое и красивое, не хочется искать другое...

Спасибо.
Re[3]: реклама на каждую страницу (.htaccess или?)
От: UserAd Россия http://userad.net.ru
Дата: 13.07.06 09:44
Оценка:
А>Пытаюсь передать GET-параметр в скрипт. Пишу в строке браузера:

А>http://myhost.com/newfolder/setup.php?go=forward


А>В index.php делаю echo var_dump($_GET);


А>Получаю только:


А>array(1) { ["url"]=> string(19) "newfolder/setup.php" }


А>Можно как-нибудь в тот же скрипт GET-параметр передать?

А>В любом виде, главное чтобы было.
А>А то решение очень простое и красивое, не хочется искать другое...

<?
function ParseUrl($query_string)
{
    global $_GET;
    
        // Разбиваем запрос на две части: сам запрос и параметры
        // Запрос без GET: /директория/поддиректория/.../файл/параметр1/значение1/.../параметрN/значениеN/
        // Запрос c GET:   /директория/поддиректория/.../файл?параметр1=значение1&...&параметрN=значениеN
        $query = explode('?', $query_string);

        // Обрабатываем запрос, разбивая его по слэшам
        $query_string = $query['0'];
        $uri_array = explode('/', $query['0']);

        // Разбираем запрос: выбираем сам файл и переданные в него параметры. Параметры сохранаяем в GET
        for ($i = 0, $count_uri_array = count($uri_array); $i < $count_uri_array; $i++)
        {
            if ($i == 0)
            {
                for ($directory = ''; is_dir($directory . $uri_array[$i]); $i++)
                {
                    $directory .= $uri_array[$i] . '/';
                }
                $file = $uri_array[$i] . '.php';
                $this->directory = $directory;
                $this->file = $file;
                $this->requestedfile = $directory . $file;
            }
            else
            {
                $key = $uri_array[$i];
                if(!array_key_exists($key, $_GET))
                {
                    $_GET[$key] = urldecode($uri_array[$i + 1]);
                }
                else
            //если пришло несколько одинаковых значений, превращаем в массив
                {
                    if(!is_array($_GET[$key]))
                    {
                        $_GET[$key] = array($_GET[$key]);
                    }
                    $_GET[$key][] = urldecode($uri_array[$i + 1]);
                }
                $this->parameters[$key] = $_GET[$key];
                $i++;
            }
        }

        // Разбираем параметры GET, пришедшие к нам как нормальные параметры, и обрабатываем их
        $request = $query['1'];

        $uri_array = explode('&', $request);

        for ($i = 0, $count_uri_array = count($uri_array); $i < $count_uri_array; $i++)
        {
            $uri_array[$i] = explode('=', $uri_array[$i]);
            $key = $uri_array[$i]['0'];
            if (!array_key_exists($key, $_GET))
            {
              $_GET[$key] = urldecode($uri_array[$i]['1']);
            }
            else
            //если пришло несколько одинаковых значений, превращаем в массив
            {
                if(!is_array($_GET[$key]))
                {
                    $_GET[$key] = array($_GET[$key]);
                }
                 $_GET[$key][] = urldecode($uri_array[$i]['1']);
            }
            $this->parameters[$key] = $_GET[$key];
        }
    }
?>


немного поправь под свои нужды ))
Re[4]: реклама на каждую страницу (.htaccess или?)
От: delorge  
Дата: 13.07.06 14:31
Оценка:
За это спасибо конечно, но суть проблемы в том что я в скрипте эти параметры не получаю.
То есть в $_GET'е у меня почему-то ничего кроме пути к файлу нет.

Хотя запрос был с GET'ом
http://myhost.com/newfolder/setup.php?go=forward

В скрипте, куда прописан редирект вижу что
$_GET['url'] == "newfolder/setup.php"
То, что было за знаком вопроса обрезалось...

Может RewriteRule подправить как-то надо?
Re[5]: реклама на каждую страницу (.htaccess или?)
От: Аноним  
Дата: 14.07.06 07:22
Оценка:
Здравствуйте, delorge, Вы писали:

D>За это спасибо конечно, но суть проблемы в том что я в скрипте эти параметры не получаю.

D>То есть в $_GET'е у меня почему-то ничего кроме пути к файлу нет.

D>Хотя запрос был с GET'ом

D>http://myhost.com/newfolder/setup.php?go=forward

D>В скрипте, куда прописан редирект вижу что

D>$_GET['url'] == "newfolder/setup.php"
D>То, что было за знаком вопроса обрезалось...

D>Может RewriteRule подправить как-то надо?


Можешь скинуть мне код? я гляну и скажу

userad@gmail.com
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.