Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.08.2010, 13:32   #1
fezilk25
Форумчанин
 
Регистрация: 01.08.2010
Сообщений: 124
Радость Преобразовать ссылку через PHP

помогите пожалуйста с РНР. есть ссылка:
http://site.ru/index.html (т.е. мы находимся на странице с этим адресом)
нужно через PHP преобразовать с ссылку в такую:
http://site.ru/print:index.html

т.е. добавить print: после главного адреса сайта..

В php не разбираюсь, просто версстаю сайт, заказчику нужно ссылку на версию для печати в футере разместить... а ссылка именно такого вида. Кому не трудно, напишите, пожалуйста, а то меня съедят
fezilk25 вне форума Ответить с цитированием
Старый 17.08.2010, 13:39   #2
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

Неправильно поставлена формулировака задачи.
ПОэтому ответы могут быть разными.

Пробуйте :
Код HTML:
<script type="text/javascript">
windows.location="http://site.ru/print:index.html"
</script>
или
PHP код:
Header("Location: http://site.ru/print:index.html"); 
SkyM@n вне форума Ответить с цитированием
Старый 17.08.2010, 13:42   #3
fezilk25
Форумчанин
 
Регистрация: 01.08.2010
Сообщений: 124
По умолчанию

Да, не так выразился. Мы находимся на странице http://site.ru/index.html, снизу есть ссылка, при нажатии на которую пользователь должен перейти на страницу http://site.ru/print:index.html

Дело в том, что шаблон, где будет ссылка - один, а контент выводится разный, и адреса страниц разные. Так что нужно каким-то образом спарсить название страницы (index.html), загнать его в переменную, а потом сделать линк http://site.ru/print: .$page

Вот.
fezilk25 вне форума Ответить с цитированием
Старый 17.08.2010, 14:12   #4
fezilk25
Форумчанин
 
Регистрация: 01.08.2010
Сообщений: 124
По умолчанию

Меня заказчик сейчас ушибет...

кто первый поможет, тому сюрприз
fezilk25 вне форума Ответить с цитированием
Старый 17.08.2010, 14:12   #5
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

Парсинг - это перебор содержимого.
Тут же нужно просто-напросто брать название страницы из объекта window.location и создавать новую ссылку посредством того же джаваскрипта (пример на jQuery):

Код HTML:
<script type="text/javascript">
     $("#printlink").attr("href","/print:" + window.location.pathname);
</script>
При этом в нужном месте в РНР-файле написать:
PHP код:
echo '<a id='#printlink'>Print</a>'; 
Можно сделать на чистом РНР, но для этого уйдет больше времени, а также нужно учитывать mod_rewrite, а также особенности движка.
SkyM@n вне форума Ответить с цитированием
Старый 17.08.2010, 18:08   #6
fezilk25
Форумчанин
 
Регистрация: 01.08.2010
Сообщений: 124
По умолчанию

SkyM@n, не работает такой способ.

Да и как он должен работать? Значение href не указано, соответственно и переходить по ссылке некуда.
fezilk25 вне форума Ответить с цитированием
Старый 17.08.2010, 18:11   #7
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

Цитата:
Сообщение от fezilk25 Посмотреть сообщение
Значение href не указано, соответственно и переходить по ссылке некуда.
Если вы будете внимательны, то вы увидите, что параметр href указан.

А то, что вариант не работает, на это могут быть ряд причин. Одна из них - вы неправильно написали.
SkyM@n вне форума Ответить с цитированием
Старый 17.08.2010, 18:17   #8
fezilk25
Форумчанин
 
Регистрация: 01.08.2010
Сообщений: 124
По умолчанию

Скачал последнюю версию jQuery. Подключил. Скопировал вышеуказанный скрипт в шаблон. И поставил эту ссылку. После загрузки страницы при наведении на ссылку курсор остается обычным. При нажатии ничего не изменятся. Так что href не указывается. В скрипте то я его вижу. Но не работает.
fezilk25 вне форума Ответить с цитированием
Старый 17.08.2010, 18:26   #9
fezilk25
Форумчанин
 
Регистрация: 01.08.2010
Сообщений: 124
По умолчанию

И кстати.
Код:
echo '<a id='#printlink'>Print</a>';
1) кавычки одинаковые быть не должны;
2) id указывается без решетки
Код:
echo "<a id='printlink'>Print</a>";
но всё-равно не работает
fezilk25 вне форума Ответить с цитированием
Старый 17.08.2010, 18:32   #10
fezilk25
Форумчанин
 
Регистрация: 01.08.2010
Сообщений: 124
По умолчанию

Если бы и работало, перешло бы на http://site.ru/print:/index.html
Лишний слэш. Как убрать?

Сделал так:
Код:
<a href="#printlink" onclick="window.location='/print:'+window.location.pathname">link</a>
Проблема со слешем.
fezilk25 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
адресс ячейки через ссылку mihakr Microsoft Office Excel 16 07.08.2011 08:29
Переменные через текстовую ссылку Артем Ляшенко PHP 1 11.07.2010 12:10
Задать ссылку через ListView Shouldercannon Общие вопросы Delphi 2 09.07.2010 17:20
Передача параметров через ссылку xxxsas PHP 6 10.08.2009 21:09
Преобразовать форму в ссылку Pekc HTML и CSS 1 06.12.2007 20:10