0 Пользователей и 1 Гость просматривают эту тему.
  • 14 Ответов
  • 5772 Просмотров
*

pedrosoft

  • Захожу иногда
  • 367
  • 113 / 7
Как использовать sefRelToAbs?
« : 01.07.2007, 14:04:16 »
Подскажите пожалуйста вот например есть ссылка:
Код
$gimmeback.="<a href=index.php?option=com_comprofiler&task=userProfile&user=".$ofanid."&Itemid=27>".$ofaname."</a> ";
Как к ней прикрутить sefRelToAbs? Пробывал разные варианты но не работает...руки видно очень кривы
Интернет Хостинг Центр: отличные цены, лучшее качество, расположение в дата-центре «Оверсан-Меркурий»
*

userxp

  • Живу я здесь
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
Re: Как использовать sefRelToAbs?
« Ответ #1 : 01.07.2007, 14:24:15 »

$gimmeback 
.= '<a href="'
sefRelToAbs('index.php?option=com_comprofiler&task=userProfile&user='.$ofanid.'&Itemid=27').'">'
$ofaname.'</a>';
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3
*

pedrosoft

  • Захожу иногда
  • 367
  • 113 / 7
Re: Как использовать sefRelToAbs?
« Ответ #2 : 01.07.2007, 14:59:55 »
Благодарю!
Интернет Хостинг Центр: отличные цены, лучшее качество, расположение в дата-центре «Оверсан-Меркурий»
*

pedrosoft

  • Захожу иногда
  • 367
  • 113 / 7
Re: Как использовать sefRelToAbs?
« Ответ #3 : 16.07.2007, 02:23:22 »
userxp а не мог бы ещё раз подсказать с такой ссылкой $hrefs[] = $mosConfig_live_site."/index.php?option=com_content&task=view&id=".$row->id."&Itemid=".$mainframe->getItemid($row->id);
Интернет Хостинг Центр: отличные цены, лучшее качество, расположение в дата-центре «Оверсан-Меркурий»
*

userxp

  • Живу я здесь
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
Re: Как использовать sefRelToAbs?
« Ответ #4 : 16.07.2007, 02:30:09 »
что подсказать?
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3
*

pedrosoft

  • Захожу иногда
  • 367
  • 113 / 7
Re: Как использовать sefRelToAbs?
« Ответ #5 : 16.07.2007, 12:20:49 »
Как прикрутить к ней функцию sefRelToAbs
Интернет Хостинг Центр: отличные цены, лучшее качество, расположение в дата-центре «Оверсан-Меркурий»
*

userxp

  • Живу я здесь
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
Re: Как использовать sefRelToAbs?
« Ответ #6 : 16.07.2007, 12:33:29 »
а из предыдущего, разве, не следует как?
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3
*

pedrosoft

  • Захожу иногда
  • 367
  • 113 / 7
Re: Как использовать sefRelToAbs?
« Ответ #7 : 16.07.2007, 17:59:42 »
Никак не могу следствие вывести...
А можно последний раз подсказать больше спрашить не буду (по этой теме)
Интернет Хостинг Центр: отличные цены, лучшее качество, расположение в дата-центре «Оверсан-Меркурий»
*

smart

  • Администратор
  • 6485
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
Re: Как использовать sefRelToAbs?
« Ответ #8 : 16.07.2007, 18:43:50 »
Никак не могу следствие вывести...
а что ссобственно непонятно? что надо ссылку передать в качестве параметра в функцию? или что?
*

Alex_B

  • Захожу иногда
  • 196
  • 39 / 0
Re: Как использовать sefRelToAbs?
« Ответ #9 : 16.07.2007, 21:43:17 »
$hrefs[] = $mosConfig_live_site."/index.php?option=com_content&task=view&id=".$row->id."&Itemid=".$mainframe->getItemid($row->id);


$hrefs 
$mosConfig_live_site."/index.php?option=com_content&task=view&id=".$row->id."&Itemid=".$mainframe->getItemid($row->id);

$hrefs sefRelToAbs($hrefs);
$link'<a href="'$hrefs .'">ссылка</a>';


Так??
*

Dry7

  • Осваиваюсь на форуме
  • 12
  • 13 / 2
  • Разработчик ruBook
Re: Как использовать sefRelToAbs?
« Ответ #10 : 17.07.2007, 10:59:02 »

$hrefs 
$mosConfig_live_site."/index.php?option=com_content&task=view&id=".$row->id."&Itemid=".$mainframe->getItemid($row->id);
$hrefs sefRelToAbs($hrefs);
$link'<a href="'$hrefs .'">ссылка</a>';


Так??

нет, без $mosConfig_live_site

вот так

$hrefs
[] = sefRelToAbs"index.php?option=com_content&task=view&id=".$row->id."&Itemid=".$mainframe->getItemid($row->id) );


то есть линк должен начинаться с index.php
*

pedrosoft

  • Захожу иногда
  • 367
  • 113 / 7
Re: Как использовать sefRelToAbs?
« Ответ #11 : 17.07.2007, 12:23:15 »

$hrefs 
$mosConfig_live_site."/index.php?option=com_content&task=view&id=".$row->id."&Itemid=".$mainframe->getItemid($row->id);

$hrefs sefRelToAbs($hrefs);
$link'<a href="'$hrefs .'">ссылка</a>';


Так??
Там же был массив а вы от него избавились :)
нет, без $mosConfig_live_site

вот так

$hrefs
[] = sefRelToAbs"index.php?option=com_content&task=view&id=".$row->id."&Itemid=".$mainframe->getItemid($row->id) );


то есть линк должен начинаться с index.php
Спасибо. Т.ё. фунция sefRelToAbs сама добавляет адрес сайта(http://site.ru/)
Интернет Хостинг Центр: отличные цены, лучшее качество, расположение в дата-центре «Оверсан-Меркурий»
*

smart

  • Администратор
  • 6485
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
Re: Как использовать sefRelToAbs?
« Ответ #12 : 17.07.2007, 12:54:41 »
фунция sefRelToAbs сама добавляет адрес сайта(http://site.ru/)
да, именно  так
*

Dry7

  • Осваиваюсь на форуме
  • 12
  • 13 / 2
  • Разработчик ruBook
Re: Как использовать sefRelToAbs?
« Ответ #13 : 17.07.2007, 22:58:18 »
ага, а если в линке присутствует адрес сайта, то функция обрабатывает его как ссылку на другой сайт, то есть не трогает.
*

zaboich

  • Осваиваюсь на форуме
  • 37
  • 11 / 0
Re: Как использовать sefRelToAbs?
« Ответ #14 : 01.08.2007, 12:21:54 »
Тут много бился с передачей параметров с русскими символами например:
Код
$search = "русский текст";
$option = "com_component";
$link = 'index.php?option=$option&searchword=$search";

Для передачи символов в русских кодировках требуется произвести преобразование передаваемой строки функцией urlencode(), т.е.
Код
$search = urlencode($search);

и если вставить в ...html.php:
Код
echo "<a href=\"$link\">
то на странице получим ссылку
<a href="index.php?option=com_component&searchword=%F0%F3%F1%F1%EA%E8%E9+%F2%E5%EA%F1%F2">
, которая будет вполне корректно работать (но некрасиво, хотим лучше  :P ).

А если использовать функцию sefRelToAbs():
Код
$link = sefRelToAbs($link);
, то получим строку
<a href="/option,com_component/searchword,русский текст/">
, которую нормально послать может (насколько я понял только FireFox)

После долгих попыток, я нашел способ - двойное кодирование:
Код
$search = urlencode( urlencode( $search ) );

Тогда из
Код
$link = sefRelToAbs($link);
будет в IE и Opere
<a href="/option,com_component/searchword,%F0%F3%F1%F1%EA%E8%E9+%F2%E5%EA%F1%F2/">
а в FF будет
<a href="/option,com_component/searchword,русский текст/">
И все будут довольны


Но понять почему так работает не смог. Особенно учитывая что в самой sefRelToAbs() я не нашел никакой работы по преобразованию кодировок.
Кто нибудь может объяснить почему так?  !!!???!!!

PS хорошо, хоть как-то работает :)
« Последнее редактирование: 01.08.2007, 13:10:24 от zaboich »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться