Вернуться   Форум SAPE.RU > Общие вопросы > Разработка и сопровождение сайтов

-->
Ответ
 
Опции темы
Старый 10.09.2008, 22:13   #1
Специалист
 
Аватар для exe2
 
Регистрация: 08.01.2008
Сообщений: 303
Вес репутации: 210
exe2 - луч света в тёмном царствеexe2 - луч света в тёмном царствеexe2 - луч света в тёмном царствеexe2 - луч света в тёмном царствеexe2 - луч света в тёмном царствеexe2 - луч света в тёмном царстве
По умолчанию Помогите пожалуйста с редиректом

поставил се чужой редирект на DLE, всё было хорошоЮ до тех пор пока я не заметил что он обрезает ссылку после знака &.

вот собственно код редика:

PHP код:

<?php

 
/***********************************************
         **  @ Author: Hamer
         **  @ Modification: Infocean
         **  @ 2007-2008
  *************************************************/

  
error_reporting(7);

    
define('ROOT_DIR''..' );
    
define('ENGINE_DIR' ROOT_DIR '/engine');
    
    require_once ( 
ENGINE_DIR '/data/config.php');
     
     
     
        if ( !
count($config)  || !$config
            {
                die (
"Ошибка в файле <b>engine/data/config.php</b>");
            }
    
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    // Настройки
    //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        // Проверка на валидность URL ?
        
        
define('URL_CHECK' 1); // по умолчанию 1 ( 0 - нет )
    // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    // Дальше не мацать код
    // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    
$url  = (isset($_GET['url']) && (!empty($_GET['url']))) ? trim($_GET['url']) : @header('Location: /index.php');
    
    if  ( 
URL_CHECK 
    {
        if ( !
eregi 'http://' $url ))
        {
              die (
"Неправильно построенный url");
        }
    }   
        
$link     "<a href=\"".$url."\">".$url."</a>";
        
$name "название сайта";
        
$url_a ".$url.";

        include_once ( 
ENGINE_DIR '/' . (($config['version_id'] > 6.2) ? 'classes' 'inc') . '/templates.class.php');
        
        
$skin = new dle_template;
        
$skin -> dir = ( ROOT_DIR.'/templates/шаблон/');
        
        
$skin -> load_template('redirect.tpl');
        
$skin -> set('{link}'$link );
        
$skin -> set('{name}'$name);
        
$skin -> set('{url}'$url_a);
        
        
$skin -> compile('redirect');
        
$skin -> clear();
        
        
        
        
    
//вывод
  
print ( $skin -> result ['redirect'] );
    
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

?>
подскажите как сделать что бы он не обрезал ссылки после знака & и остальных

заранее спасибо большое

Добавлено через 7 часов 53 минуты
никто не может помочь?
__________________
Где симпсоны? Тут Всё о Симпсонах
Развлечения? Будут вам развлечения
Астрология и гороскоп нужен? а он есть тут: Астрология любви и гороскопы

Последний раз редактировалось exe2; 10.09.2008 в 22:13. Причина: Добавлено сообщение
exe2 вне форума   Ответить с цитированием
Старый 10.09.2008, 23:59   #2
Особый статус
 
Регистрация: 23.03.2008
Адрес: localhost
Сообщений: 2,594
Вес репутации: 322
Ufaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущее
Отправить сообщение для Ufaweb с помощью ICQ
По умолчанию

$url_a = ".$url.";
Может
$url_a = "/go.php?url=".urlencode($url);?
Ufaweb вне форума   Ответить с цитированием
Старый 11.09.2008, 00:45   #3
Специалист
 
Аватар для exe2
 
Регистрация: 08.01.2008
Сообщений: 303
Вес репутации: 210
exe2 - луч света в тёмном царствеexe2 - луч света в тёмном царствеexe2 - луч света в тёмном царствеexe2 - луч света в тёмном царствеexe2 - луч света в тёмном царствеexe2 - луч света в тёмном царстве
По умолчанию

а go.php откуда берется?
у меня redirect.php и вот его содержимое...
__________________
Где симпсоны? Тут Всё о Симпсонах
Развлечения? Будут вам развлечения
Астрология и гороскоп нужен? а он есть тут: Астрология любви и гороскопы
exe2 вне форума   Ответить с цитированием
Старый 11.09.2008, 08:31   #4
Новичок
 
Регистрация: 13.01.2008
Адрес: Иркутск
Сообщений: 61
Вес репутации: 200
saxar на пути к лучшему
Отправить сообщение для saxar с помощью ICQ
По умолчанию

Это не скрипт не правильно работает, а это на него неправильно значение переменной подаётся. т.е. в get-запросе же переменные разделяются знаком & и поэтому значение переменной url и заканачивается на &, которая есть в ссылке...

Чтобы всё работало верно, нужно либо правильно подавать значение на скрипт, ну или поправить скрипт например так:
PHP код:
<?php 

 
/*********************************************** 
         **  @ Author: Hamer 
         **  @ Modification: Infocean 
         **  @ 2007-2008 
  *************************************************/ 

  
error_reporting(7); 

    
define('ROOT_DIR''..' ); 
    
define('ENGINE_DIR' ROOT_DIR '/engine'); 
     
    require_once ( 
ENGINE_DIR '/data/config.php'); 
      
      
      
        if ( !
count($config)  || !$config)  
            { 
                die (
"Ошибка в файле <b>engine/data/config.php</b>"); 
            } 
    
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    // Настройки 
    //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
         
        // Проверка на валидность URL ? 
         
        
define('URL_CHECK' 1); // по умолчанию 1 ( 0 - нет ) 
    // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    // Дальше не мацать код 
    // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
     
    //$url  = (isset($_GET['url']) && (!empty($_GET['url']))) ? trim($_GET['url']) : @header('Location: /index.php'); 
    
    
if (isset($_GET['url']) && (!empty($_GET['url'])))
    {
        
$n strpos($_SERVER['REQUEST_URI'], "url=");
        
$url substr($_SERVER['REQUEST_URI'], $n+4); 
    }
    else    @
header('Location: /index.php');    
     
    if  ( 
URL_CHECK )  
    { 
        if ( !
eregi 'http://' $url )) 
        { 
              die (
"Неправильно построенный url"); 
        } 
    }    
        
$link     "<a href=\"".$url."\">".$url."</a>"
        
$name "название сайта"
        
$url_a ".$url."

        include_once ( 
ENGINE_DIR '/' . (($config['version_id'] > 6.2) ? 'classes' 'inc') . '/templates.class.php'); 
         
        
$skin = new dle_template
        
$skin -> dir = ( ROOT_DIR.'/templates/шаблон/'); 
         
        
$skin -> load_template('redirect.tpl'); 
        
$skin -> set('{link}'$link ); 
        
$skin -> set('{name}'$name); 
        
$skin -> set('{url}'$url_a); 
         
        
$skin -> compile('redirect'); 
        
$skin -> clear(); 
         
         
         
         
    
//вывод 
  
print ( $skin -> result ['redirect'] ); 
    
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 

?>
Только теперь на этот скрипт не передать другие параметры после значения переменной url (можно только до)... Хотя этому скрипту другие параметры вообщем-то и не нужны
__________________
интересные сайты
Отказать. Причина: текст текст текст ссылки не подходит не подходит не подходит.
Инвайт в систему j2j.ru
saxar вне форума   Ответить с цитированием
Старый 11.09.2008, 22:51   #5
Специалист
 
Аватар для exe2
 
Регистрация: 08.01.2008
Сообщений: 303
Вес репутации: 210
exe2 - луч света в тёмном царствеexe2 - луч света в тёмном царствеexe2 - луч света в тёмном царствеexe2 - луч света в тёмном царствеexe2 - луч света в тёмном царствеexe2 - луч света в тёмном царстве
По умолчанию

saxar ОГРОМНЕЙШЕЕ СПАСИБО!!! Всё получилось как и хотелось!!! Спасибо!!!! держите плюсик в репу!
__________________
Где симпсоны? Тут Всё о Симпсонах
Развлечения? Будут вам развлечения
Астрология и гороскоп нужен? а он есть тут: Астрология любви и гороскопы
exe2 вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите пожалуйста, я в отчаяние skyman Вопросы по работе системы 17 02.09.2008 21:08
Помогите пожалуйста с мод-реврайт. sergbond Общие вопросы оптимизации 8 15.07.2008 22:41
пожалуйста, помогите разобраться goodchelovek Вопросы от новичков 15 18.02.2008 12:53
ЛЮДИ ПОМОГИТЕ ПОЖАЛУЙСТА!!! Dim4iK Курилка 127 31.01.2008 00:30
Помогите пожалуйста разобраться mobiletaxi Пожелания пользователей системы 2 07.09.2007 21:29


Часовой пояс GMT +3, время: 01:55.