+ + +
С нами с 12.07.03
Сообщения: 99
Рейтинг: 5
|
Добавлено: 29/03/08 в 11:56 |
|
|
|
|
php
С нами с 09.10.06
Сообщения: 3706
Рейтинг: 2410
|
Добавлено: 29/03/08 в 12:47 |
не знаю как в htacces а вот в php есть функция
|
|
|
|
+ + +
С нами с 12.07.03
Сообщения: 99
Рейтинг: 5
|
Добавлено: 29/03/08 в 13:03 |
_s_[sov] писал: | не знаю как в htacces а вот в php есть функция |
Функция в РНР такая может быть и есть, да вот я, к сожалению огромному, не программист.
А вот в htacces точно как-то можно, и и это для меня конечно же было бы много проще.
|
|
|
|
php
С нами с 09.10.06
Сообщения: 3706
Рейтинг: 2410
|
Добавлено: 29/03/08 в 13:07 |
violar писал: | Функция в РНР такая может быть и есть, да вот я, к сожалению огромному, не программист.
А вот в htacces точно как-то можно, и и это для меня конечно же было бы много проще. |
Код: |
<?
echo urldecode("http://site.ru/?search=%D0%90%D0%B2%D1%82%D0%BE%D0%BD%D0%BE%D0%B2%D0%BE%D1%81%D1%82%D0%B8&type=web
");
?>
|
|
|
|
|
+ + +
С нами с 12.07.03
Сообщения: 99
Рейтинг: 5
|
Добавлено: 29/03/08 в 14:00 |
_s_[sov] писал: | Код: |
<?
echo urldecode("http://site.ru/?search=%D0%90%D0%B2%D1%82%D0%BE%D0%BD%D0%BE%D0%B2%D0%BE%D1%81%D1%82%D0%B8&type=web
");
?>
| |
Это шутка или как? Я же сообщал выше, что это типа поискового сервиса. Следовательно, после каждого поискового запроса в адресной строке броузера будет возникать соответствующий ему УРЛ. И что Вы предлагаете? На каждый такой возможный УРЛ писать код его персонального декодирования? И как предвидеть, что именно будут искать и, соответственно, какие УРЛы декодировать? И главное - сколько их будет?
Через htaccess это как-то можно сделать практически одной строчкой через Rewrite. Ниже привожу подобное, но для других скриптов:
RewriteEngine On
RewriteRule search_(.*)_page_(.*)\.html index.php?s=y&search=$1&complete=1&page=$2&sa=N [L]
|
|
|
|
« ... full on ... »
С нами с 17.03.07
Сообщения: 670
Рейтинг: 1686
|
Добавлено: 29/03/08 в 17:40 |
Цитата: | RewriteEngine On
RewriteRule search_(.*)_page_(.*)\.html index.php?s=y&search=$1&complete=1&page=$2&sa=N [L] |
Это немного другой редирект, в приведённом примере запрос страницы вида search_ money_page_ 287.html передаётся скрипту index.php с установкой переменных, где переменные search=money, а page=287 получают данные из псевдо-урла. Т.е. это просто реврайт запроса, без обработки его данных.
Средствами mod_rewrite перевести запрос в латиницу не получится, _s_[sov]: написал в принципе верное решение - сначала нужно декодировать УРЛ, т.е. получить из "%D0%90%D0%B2%D1%82%D0%BE%D0%BD%D0%BE%D0%B2%D0%BE%D1%81%D1%82%D0%B8" -> "Автоновости", а потом уже из кирилицы перевести в латиницу, средствами PHP или другого серверного языка и сделать редирект через, например Header в PHP или location в JS и т.д.
|
|
|
|
+ + +
С нами с 12.07.03
Сообщения: 99
Рейтинг: 5
|
Добавлено: 01/04/08 в 22:15 |
Corex писал: | т.е. получить из "%D0%90%D0%B2%D1%82%D0%BE%D0%BD%D0%BE%D0%B2%D0%BE%D1%81%D1%82%D0%B8" -> "Автоновости" |
Ясненько. Тогда другой вопрос. А можно ли сделать скрипт, который делал бы наоборот. Т.е приобразовывал бы строки слов и фраз из списка. Например вот такой набор фраз:
ключевая фраза
поисковый запрос
поиск сайта
переделывал бы вот в такое:
search=%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%B2%D0%B0%D1%8F+%D1%84%D1%80%D0%B0%D0%B7%D0%B0 &type=web
search=%D0%BF%D0%BE%D0%B8%D1%81%D0%BA%D0%BE%D0%B2%D1%8B%D0%B9+%D0%B7%D0%B0%D0%BF%D1%80%D0%BE%D1%81 &type=web
search=%D0%BF%D0%BE%D0%B8%D1%81%D0%BA+%D1%81%D0%B0%D0%B9%D1%82%D0%B0 &type=web
|
|
|
|
« ... full on ... »
С нами с 17.03.07
Сообщения: 670
Рейтинг: 1686
|
Добавлено: 02/04/08 в 06:40 |
Можно, на ПХП очень просто:
Код: | <?php
$keyword = "ключевая фраза";
$keyword = urlencode($keyword);
echo "search=$keyword&type=web";
?> |
На жаваскрипт немного проблемнее:
Код: | <html>
<body>
<script language="JavaScript">
<!--
var trans = [];
for (var i = 0x410; i <= 0x44F; i++)
{
trans[i] = i - 0x350;
}
trans[0x401] = 0xA8;
trans[0x451] = 0xB8;
var escapeOrig = window.escape;
window.escape = function(str)
{
var ret = [];
for (var i = 0; i < str.length; i++)
{
var n = str.charCodeAt(i);
if (typeof trans[n] != 'undefined')
{
n = trans[n];
}
if (n <= 0xFF)
{
ret.push(n);
}
}
return escapeOrig(String.fromCharCode.apply(null, ret));
}
document.write("search=" + escape("ключевая фраза") + "&type=web");
//-->
</script>
</body>
</html> |
|
|
|
|
+ + +
С нами с 12.07.03
Сообщения: 99
Рейтинг: 5
|
Добавлено: 02/04/08 в 10:52 |
Corex писал: | Можно, на ПХП очень просто:
Код: | <?php
$keyword = "ключевая фраза";
$keyword = urlencode($keyword);
echo "search=$keyword&type=web";
?> |
|
Почему-то как-то не так кодирует. Для примера попробовал с фразой "ищем сайты". Ваш скрипт выполнил таким образом:
search=%E8%F9%E5%EC+%F1%E0%E9%F2%FB&type=web
А вот мой поисковик в адресной строке выдает другое:
search=%D0%B8%D1%89%D0%B5%D0%BC+%D1%81%D0%B0%D0%B9%D1%82%D1%8B&type=web
И еще... Мне нужно, чтобы кодировал не по одной фразе, а сразу все из списка (по одной в строке). Например из txt-файла. Выше я привел пример из трех фраз, как это должно быть.
|
|
|
|
php
С нами с 09.10.06
Сообщения: 3706
Рейтинг: 2410
|
Добавлено: 02/04/08 в 13:12 |
а что циклы отменили?
пихаешь в файл урлы и кодируешь все скриптом, если не можешь сам то стукнись в асю - помогу чем смогу.
|
|
|
|
+ + +
С нами с 12.07.03
Сообщения: 99
Рейтинг: 5
|
Добавлено: 02/04/08 в 14:44 |
_s_[sov] писал: | а что циклы отменили? |
Я к сожалению не программист, поэтому и открыл этот топик.
_s_[sov] писал: | пихаешь в файл урлы и кодируешь все скриптом |
1. Мне нужно кодировать не урлы, а поисковые запросы. А уж после этого на их кодированной основе я сам сделаю УРЛы и html-ссылки.
2. Я сообщил, что предложенный скрипт кодирует не так, как это выводится в моем поисковике. А мне нужно, чтобы кодировка выполнялась именно так, как это делает поисковик. Ниже видно, в чем разница.
Цитата: |
Тестовую фразу "ищем сайты" предложенный выше скрипт выполнил таким образом:
search=%E8%F9%E5%EC+%F1%E0%E9%F2%FB&type=web
А вот мой поисковик в адресной строке выдает другое:
search=%D0%B8%D1%89%D0%B5%D0%BC+%D1%81%D0%B0%D0%B9%D1%82%D1%8B&type=web |
Повторяюсь, мне нужно, чтобы кодировка выполнялась так, как ее делает поисковик.
|
|
|
|