Модераторы: Sardar, Aliance

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Подстановка актуального домена в ссылку 
V
    Опции темы
viperson
Дата 5.1.2009, 22:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 91
Регистрация: 5.1.2009

Репутация: нет
Всего: -1



Здравствуйте спецы. Помогите решить задачку. Учусь на курсах и в контрольной работе задали такой вопрос:  Есть ссылка типа http://site.com/news.php?add=news335. Эта ссылка находится на 10 000 страниц сайта(ссылка на новость типа), Но домен раз в день меняется и ссылка соответственно становится не рабочей, а руками править на 10 к страниц не реально. Каждый день уже не site.com а site2.com, site3.com и тд. Как организовать в html странице скрипт, который реализует подстановку правильного домена из файла domains.txt в момент нажатия на ссылку, то есть линк типа этого http://<?=$mylink?>/news.php?add=news335), где <?=$mylink?> тот домен который берется из файла domains.txt. Файл должен лежать в корне домена на страницах которого размещен линк. Я в кодинге пока не шарю особо, особенно в js? поэтому попрошу с примерчиками чтобы сразу попробовать. Очень нужна Ваша помосчь. smile 

PM   Вверх
webevt
Дата 5.1.2009, 22:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 235
Регистрация: 5.5.2005

Репутация: нет
Всего: 3



viperson, реализация именно с помощью js? Во-первых, если ссылка на свой же сайт(на котором и скрипт), то можно использовать location.domain. Иначе, с помощью аякса отправлять запрос на этот txt файл, содержащий новое имя домена.
PM MAIL   Вверх
ksnk
Дата 5.1.2009, 23:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 48
Всего: 386



Цитата

то есть линк типа этого http://<?=$mylink?>/news.php?add=news335), где <?=$mylink?> тот домен который

А чего - в контрольной работе пофиг на каком языке делать?


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
viperson
Дата 5.1.2009, 23:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 91
Регистрация: 5.1.2009

Репутация: нет
Всего: -1



да в принципе всеравно на чем писать. Так как ссылка находится на html странице я предположил что может быть реализовано только на js, хотя можно на странице указать ссылку другого вида если в php делать и связать  эту ссылку с пхп скриптом на этом же домене.  Я создал параллельно топик в пхп разделе. Я не очень шарю в программировании, поэтому нужна любая реализация, если на js возможно то на нем, а если нет пригодятся любые реализации.

Добавлено @ 23:21
webevt  ссылка не на тот же домен. Ссылка находится на страницах моего сайта а ссылается на другой домен.

ksnk 
Вид переменной в домене просто случайный, не важно как будет выглядеть, хоть $domain? важна реализация задачи для html кода, то есть страница на которой линк на другой домен является html

Это сообщение отредактировал(а) viperson - 5.1.2009, 23:26
PM   Вверх
ksnk
Дата 5.1.2009, 23:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 48
Всего: 386



А как в точности формулируется задача? Просто, imho, задача должна быть хоть сколько нибудь приближена к реальности, а в реальности 10к страниц новостного сайта не меняются так каждый день. Более того, индекс ссылки новости не меняется никогда. И адрес ссылки всегда один и тот-же именно для того, чтобы ссылка всегда оставалась актуальной, чтобы Вася Пупкин, поместив новость в букмарки в детстве по пьяне, мог в старости, на трезвую голову ее еще раз прочитать...  smile 

Можно порешать более разумно, imho, выглядящую задачу - "давайте попроектируем охрененно большой новостной портал с офигенным потоком новостей..."  smile 



--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
viperson
Дата 5.1.2009, 23:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 91
Регистрация: 5.1.2009

Репутация: нет
Всего: -1



ksnk Все абстрактно в задаче. Не важно что это за сайт, на который ссылка. Просто преподавателям захотелось именно так. Пусть это будет любой другой сайт, а ссылка может выглядеть как угодно. то есть допустим http://blabla.com/viagra.html  smile  . Домен сменился на blablabla.com, а я эту ссылку засунул уже в 10к страниц и теперь менять вручную просто заи....сь, но есть в корне домена файл domains.txt в который я помещаю каждый день актуальный домен и надо чтобы скрипт подтягивал его в ссылку. Вопрос поставлен такой: C помощью каких языков можно реализовать смену домена и как реализовать? То еть нужны рабочие примеры либо на js либо на php, важно то что ссылка находится на html странице и как теперь ее связать с пхп или реализовать на js?

Это сообщение отредактировал(а) viperson - 6.1.2009, 00:25
PM   Вверх
ksnk
Дата 6.1.2009, 00:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 48
Всего: 386



Угу, а откуда тогда берутся "правила переименования ссылок"? 
Вот была ссылка "site1.com/?news=1234", на следующий день она должна стать "site3.ru/?add=2345". через два дня "site5.org/?add=news3456"?  Где и как предполагается хранить эти 10000 * `количество новостей на странице` ссылок?

Это сообщение отредактировал(а) ksnk - 6.1.2009, 00:06


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
viperson
Дата 6.1.2009, 00:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 91
Регистрация: 5.1.2009

Репутация: нет
Всего: -1



ksnk site1.com/?news=1234", на следующий день она будет "site2.ru/?news=1234". через два дня "site5.org/?news=1234"  МЕНЯЕТСЯ ТОЛЬКО ДОМЕН! Если не знаешь как реализовать не пиши бред. 

10000 страниц на моем сайте и на каждой из них свои ссылки, Просто надо менять домен а не всю ссылку.
то есть изначально я должен иметь ввиду что домен может измениться и сразу в страницу добаить некий скрипт, который будет подтягивать имя домена, чтобы избежать таких ситуаций в будущем, то есть при создании других сайтов под размещение новостей


Это сообщение отредактировал(а) viperson - 6.1.2009, 00:26
PM   Вверх
ksnk
Дата 6.1.2009, 00:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 48
Всего: 386



viperson, Угу. Уже немного понятнее smile

Итого - есть просто файл с одним единственным именем домена, на который нужно заменить один-единственный домен в ссылках при показе всех этих 10000 страниц?


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
viperson
Дата 6.1.2009, 00:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 91
Регистрация: 5.1.2009

Репутация: нет
Всего: -1



да ksnk именно так.
Я уже понял как реализовать, но нужна помосчь спецов пхп. 
Вот есть ссылка http://site.com/news.php?add=news1
В моей html странице mnogonews.html я указываю ее как news.php?add=news1, где news.php - мой пхп скрипт который лежит в корне моего домена, в котором задано правило, что нужно сделать редирект по ссылке news.php?add=news1, только вначале подставить домен вида http://site.com/ перед news.php?add=news1 взяв домен из файла domain.txt. Актуальный домен я сам руками каждый день прописываю в последнем. Пусть даже актуальный домен лежит в самом скрипте news.php -  не важно где прописана инфа об актуальном домене, то есть как реализуешь так реализуешь.
PM   Вверх
ksnk
Дата 6.1.2009, 01:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 48
Всего: 386



файл replaceit.php
Код

<?php
define('REPLACE_ME','http://site.com');
define('CURRENT_SITE','http://site2.com');

echo "
var links=document.getElementsByTagName('a'),lcnt=links.length;
while(lcnt--){
   links[lcnt].href=links[lcnt].href.replace('''.REPLACE_ME."',"'.CURRENT_SITE."');
};
";
?>


Код

...
Много ссылок
...

<script type="text/javascript" src="replaceit.php"></script>
</body>


Ну раз уж нужно на javaScript'е порешать...


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
viperson
Дата 6.1.2009, 01:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 91
Регистрация: 5.1.2009

Репутация: нет
Всего: -1



Данная реализация не работает,я  проверял.

Это сообщение отредактировал(а) viperson - 6.1.2009, 15:42
PM   Вверх
Hades
Дата 6.1.2009, 15:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 226
Регистрация: 8.8.2008

Репутация: 2
Всего: 37



файл ChangeDomains.js
Код

function f(link) {
    link.href = "http://www.blabla.com"; // делаем с ссылкой всё что хотим
}

добавляем в другие(10 000) страницы
Код

<head>
...
    <link href="ChangeDomains.js" type="text/javascript" />
...
</head>
<body>
...
    <a href="javascript:void(0)" onclick="f(this)">Hello</a>
...
</body>

PM MAIL   Вверх
viperson
Дата 6.1.2009, 16:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 91
Регистрация: 5.1.2009

Репутация: нет
Всего: -1



Цитата(Hades @ 6.1.2009,  15:50)
файл ChangeDomains.js
Код

function f(link) {
    link.href = "http://www.blabla.com"; // делаем с ссылкой всё что хотим
}

добавляем в другие(10 000) страницы
Код

<head>
...
    <link href="ChangeDomains.js" type="text/javascript" />
...
</head>
<body>
...
    <a href="javascript:void(0)" onclick="f(this)">Hello</a>
...
</body>

Мне  не совсем понятна данная реализация. Есть 2 домена bla и blabla. В данный момент на всех страницах стоит bla. а ссылка - это не только имя домена , выглядит так: http://bla.com/news.php?add=news1. То есть скрипт должен автоматом сменить  http://bla.com/news.php?add=news1 на http://blabla.com/news.php?add=news1 при нажатии на нее. Кроме того на страницах есть ссылки на другие ресурсы и соответственно скрипт не должен применять ни каких правил к другим ссылкам.

Это сообщение отредактировал(а) viperson - 6.1.2009, 16:05
PM   Вверх
Hades
Дата 6.1.2009, 16:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 226
Регистрация: 8.8.2008

Репутация: 2
Всего: 37



Цитата(viperson @  6.1.2009,  15:03 Найти цитируемый пост)
То есть скрипт должен автоматом сменить

что вы тут напишите, на то он и сменит
Код

link.href = "http://blabla.com/news.php?add=news1"; // на пример


работает?

Это сообщение отредактировал(а) Hades - 6.1.2009, 16:11
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0901 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.